865 lines
47 KiB
HTML
865 lines
47 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.13.2"/>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
|
<title>musrfit: PFunction Class Reference</title>
|
|
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="jquery.js"></script>
|
|
<script type="text/javascript" src="dynsections.js"></script>
|
|
<script type="text/javascript" src="clipboard.js"></script>
|
|
<link href="navtree.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="navtreedata.js"></script>
|
|
<script type="text/javascript" src="navtree.js"></script>
|
|
<script type="text/javascript" src="resize.js"></script>
|
|
<script type="text/javascript" src="cookie.js"></script>
|
|
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
|
</head>
|
|
<body>
|
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
|
<div id="titlearea">
|
|
<table cellspacing="0" cellpadding="0">
|
|
<tbody>
|
|
<tr id="projectrow">
|
|
<td id="projectalign">
|
|
<div id="projectname">musrfit<span id="projectnumber"> 1.10.0</span>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<!-- end header part -->
|
|
<!-- Generated by Doxygen 1.13.2 -->
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
$(function() { codefold.init(0); });
|
|
/* @license-end */
|
|
</script>
|
|
<script type="text/javascript" src="menudata.js"></script>
|
|
<script type="text/javascript" src="menu.js"></script>
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
$(function() {
|
|
initMenu('',false,false,'search.php','Search',true);
|
|
});
|
|
/* @license-end */
|
|
</script>
|
|
<div id="main-nav"></div>
|
|
</div><!-- top -->
|
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
|
<div id="nav-tree">
|
|
<div id="nav-tree-contents">
|
|
<div id="nav-sync" class="sync"></div>
|
|
</div>
|
|
</div>
|
|
<div id="splitbar" style="-moz-user-select:none;"
|
|
class="ui-resizable-handle">
|
|
</div>
|
|
</div>
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
$(function(){initNavTree('classPFunction.html',''); initResizable(true); });
|
|
/* @license-end */
|
|
</script>
|
|
<div id="doc-content">
|
|
<div class="header">
|
|
<div class="summary">
|
|
<a href="#nested-classes">Classes</a> |
|
|
<a href="#pub-methods">Public Member Functions</a> |
|
|
<a href="#pro-methods">Protected Member Functions</a> |
|
|
<a href="#pri-attribs">Private Attributes</a> |
|
|
<a href="classPFunction-members.html">List of all members</a> </div>
|
|
<div class="headertitle"><div class="title">PFunction Class Reference</div></div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
|
|
<p>Class for parsing and evaluating mathematical functions from msr-file FUNCTIONS blocks.
|
|
<a href="#details">More...</a></p>
|
|
|
|
<p><code>#include <<a class="el" href="PFunction_8h_source.html">PFunction.h</a>></code></p>
|
|
<div class="dynheader">
|
|
Collaboration diagram for PFunction:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="classPFunction__coll__graph.png" border="0" usemap="#aPFunction_coll__map" alt="Collaboration graph"/></div>
|
|
<map name="aPFunction_coll__map" id="aPFunction_coll__map">
|
|
<area shape="rect" title="Class for parsing and evaluating mathematical functions from msr-file FUNCTIONS blocks." alt="" coords="8,98,90,126"/>
|
|
<area shape="rect" href="structPMetaData.html" title=" " alt="" coords="5,5,93,33"/>
|
|
<area shape="poly" title=" " alt="" coords="52,48,52,98,46,98,46,48"/>
|
|
</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 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
|
|
Classes</h2></td></tr>
|
|
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classPFunction_1_1EvalVisitor.html">EvalVisitor</a></td></tr>
|
|
<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Visitor class for evaluating the AST. <a href="classPFunction_1_1EvalVisitor.html#details">More...</a><br /></td></tr>
|
|
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
|
|
Public Member Functions</h2></td></tr>
|
|
<tr class="memitem:aadc3ac402057ce784bdcce2d3240690c" id="r_aadc3ac402057ce784bdcce2d3240690c"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#aadc3ac402057ce784bdcce2d3240690c">PFunction</a> (const musrfit::ast::assignment &assignment)</td></tr>
|
|
<tr class="memdesc:aadc3ac402057ce784bdcce2d3240690c"><td class="mdescLeft"> </td><td class="mdescRight">Constructor that parses and prepares a function for evaluation. <br /></td></tr>
|
|
<tr class="separator:aadc3ac402057ce784bdcce2d3240690c"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ac93c8e541a5add6fbc51419e2b0b96fb" id="r_ac93c8e541a5add6fbc51419e2b0b96fb"><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="#ac93c8e541a5add6fbc51419e2b0b96fb">~PFunction</a> ()</td></tr>
|
|
<tr class="memdesc:ac93c8e541a5add6fbc51419e2b0b96fb"><td class="mdescLeft"> </td><td class="mdescRight">Destructor that cleans up resources. <br /></td></tr>
|
|
<tr class="separator:ac93c8e541a5add6fbc51419e2b0b96fb"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a1bb132f2f34fa694e383fcd9007ca5ee" id="r_a1bb132f2f34fa694e383fcd9007ca5ee"><td class="memItemLeft" align="right" valign="top">virtual Bool_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a1bb132f2f34fa694e383fcd9007ca5ee">IsValid</a> ()</td></tr>
|
|
<tr class="memdesc:a1bb132f2f34fa694e383fcd9007ca5ee"><td class="mdescLeft"> </td><td class="mdescRight">Checks if the function was successfully parsed and initialized. <br /></td></tr>
|
|
<tr class="separator:a1bb132f2f34fa694e383fcd9007ca5ee"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a2aa767fc5e642fbbf4926289594f5a8f" id="r_a2aa767fc5e642fbbf4926289594f5a8f"><td class="memItemLeft" align="right" valign="top">virtual Int_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a2aa767fc5e642fbbf4926289594f5a8f">GetFuncNo</a> ()</td></tr>
|
|
<tr class="memdesc:a2aa767fc5e642fbbf4926289594f5a8f"><td class="mdescLeft"> </td><td class="mdescRight">Returns the function number extracted from the function label. <br /></td></tr>
|
|
<tr class="separator:a2aa767fc5e642fbbf4926289594f5a8f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a5043e5f026f8b40c633ed238ab092cd3" id="r_a5043e5f026f8b40c633ed238ab092cd3"><td class="memItemLeft" align="right" valign="top">virtual Bool_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a5043e5f026f8b40c633ed238ab092cd3">CheckMapAndParamRange</a> (UInt_t mapSize, UInt_t paramSize)</td></tr>
|
|
<tr class="memdesc:a5043e5f026f8b40c633ed238ab092cd3"><td class="mdescLeft"> </td><td class="mdescRight">Validates that all parameter and map references are within valid ranges. <br /></td></tr>
|
|
<tr class="separator:a5043e5f026f8b40c633ed238ab092cd3"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:af563cd8b5f0ecfe77eba6e1b726d56ff" id="r_af563cd8b5f0ecfe77eba6e1b726d56ff"><td class="memItemLeft" align="right" valign="top">virtual Double_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#af563cd8b5f0ecfe77eba6e1b726d56ff">Eval</a> (std::vector< Double_t > param, <a class="el" href="structPMetaData.html">PMetaData</a> metaData)</td></tr>
|
|
<tr class="memdesc:af563cd8b5f0ecfe77eba6e1b726d56ff"><td class="mdescLeft"> </td><td class="mdescRight">Evaluates the function with given parameters and metadata. <br /></td></tr>
|
|
<tr class="separator:af563cd8b5f0ecfe77eba6e1b726d56ff"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a9b1368054630cd5b0934d1918f8c484d" id="r_a9b1368054630cd5b0934d1918f8c484d"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a9b1368054630cd5b0934d1918f8c484d">SetMap</a> (std::vector< Int_t > map)</td></tr>
|
|
<tr class="memdesc:a9b1368054630cd5b0934d1918f8c484d"><td class="mdescLeft"> </td><td class="mdescRight">Sets the map vector for parameter indirection. <br /></td></tr>
|
|
<tr class="separator:a9b1368054630cd5b0934d1918f8c484d"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a13c31d1e38013f2a4d92372af0bc3156" id="r_a13c31d1e38013f2a4d92372af0bc3156"><td class="memItemLeft" align="right" valign="top">virtual TString * </td><td class="memItemRight" valign="bottom"><a class="el" href="#a13c31d1e38013f2a4d92372af0bc3156">GetFuncString</a> ()</td></tr>
|
|
<tr class="memdesc:a13c31d1e38013f2a4d92372af0bc3156"><td class="mdescLeft"> </td><td class="mdescRight">Returns the human-readable string representation of the function. <br /></td></tr>
|
|
<tr class="separator:a13c31d1e38013f2a4d92372af0bc3156"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-methods" name="pro-methods"></a>
|
|
Protected Member Functions</h2></td></tr>
|
|
<tr class="memitem:a54134ee34beb59bfe9ca19e479ef4d1b" id="r_a54134ee34beb59bfe9ca19e479ef4d1b"><td class="memItemLeft" align="right" valign="top">virtual Bool_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a54134ee34beb59bfe9ca19e479ef4d1b">FindAndCheckMapAndParamRange</a> (const musrfit::ast::operand &operand, UInt_t mapSize, UInt_t paramSize)</td></tr>
|
|
<tr class="memdesc:a54134ee34beb59bfe9ca19e479ef4d1b"><td class="mdescLeft"> </td><td class="mdescRight">Recursively validates parameter and map references in the AST. <br /></td></tr>
|
|
<tr class="separator:a54134ee34beb59bfe9ca19e479ef4d1b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a63406911e39c1020eaeb1978aee891fc" id="r_a63406911e39c1020eaeb1978aee891fc"><td class="memItemLeft" align="right" valign="top">virtual TString </td><td class="memItemRight" valign="bottom"><a class="el" href="#a63406911e39c1020eaeb1978aee891fc">GenerateString</a> (const musrfit::ast::expression &expr)</td></tr>
|
|
<tr class="memdesc:a63406911e39c1020eaeb1978aee891fc"><td class="mdescLeft"> </td><td class="mdescRight">Generates a human-readable string representation of the AST. <br /></td></tr>
|
|
<tr class="separator:a63406911e39c1020eaeb1978aee891fc"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a8b698f76541d92be04205837b66ddc35" id="r_a8b698f76541d92be04205837b66ddc35"><td class="memItemLeft" align="right" valign="top">virtual TString </td><td class="memItemRight" valign="bottom"><a class="el" href="#a8b698f76541d92be04205837b66ddc35">GenerateStringOperand</a> (const musrfit::ast::operand &operand)</td></tr>
|
|
<tr class="memdesc:a8b698f76541d92be04205837b66ddc35"><td class="mdescLeft"> </td><td class="mdescRight">Generates a string representation of an operand. <br /></td></tr>
|
|
<tr class="separator:a8b698f76541d92be04205837b66ddc35"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pri-attribs" name="pri-attribs"></a>
|
|
Private Attributes</h2></td></tr>
|
|
<tr class="memitem:a3a80dd233f364205a75df4f96521e655" id="r_a3a80dd233f364205a75df4f96521e655"><td class="memItemLeft" align="right" valign="top">musrfit::ast::expression </td><td class="memItemRight" valign="bottom"><a class="el" href="#a3a80dd233f364205a75df4f96521e655">fAst</a></td></tr>
|
|
<tr class="memdesc:a3a80dd233f364205a75df4f96521e655"><td class="mdescLeft"> </td><td class="mdescRight">Abstract syntax tree for the expression. <br /></td></tr>
|
|
<tr class="separator:a3a80dd233f364205a75df4f96521e655"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ad357729df47ef5d2fcd78652f56ba0bf" id="r_ad357729df47ef5d2fcd78652f56ba0bf"><td class="memItemLeft" align="right" valign="top">std::vector< Double_t > </td><td class="memItemRight" valign="bottom"><a class="el" href="#ad357729df47ef5d2fcd78652f56ba0bf">fParam</a></td></tr>
|
|
<tr class="memdesc:ad357729df47ef5d2fcd78652f56ba0bf"><td class="mdescLeft"> </td><td class="mdescRight">Current fit parameter values for evaluation. <br /></td></tr>
|
|
<tr class="separator:ad357729df47ef5d2fcd78652f56ba0bf"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:af80edee8699b8666c77336c0e2a46baa" id="r_af80edee8699b8666c77336c0e2a46baa"><td class="memItemLeft" align="right" valign="top">std::vector< Int_t > </td><td class="memItemRight" valign="bottom"><a class="el" href="#af80edee8699b8666c77336c0e2a46baa">fMap</a></td></tr>
|
|
<tr class="memdesc:af80edee8699b8666c77336c0e2a46baa"><td class="mdescLeft"> </td><td class="mdescRight">Map vector for indirect parameter references. <br /></td></tr>
|
|
<tr class="separator:af80edee8699b8666c77336c0e2a46baa"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a323a06e5b4e7673d0fde120c0dc1a6ac" id="r_a323a06e5b4e7673d0fde120c0dc1a6ac"><td class="memItemLeft" align="right" valign="top">Bool_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a323a06e5b4e7673d0fde120c0dc1a6ac">fValid</a></td></tr>
|
|
<tr class="memdesc:a323a06e5b4e7673d0fde120c0dc1a6ac"><td class="mdescLeft"> </td><td class="mdescRight">Validity flag: true if function parsed and initialized successfully. <br /></td></tr>
|
|
<tr class="separator:a323a06e5b4e7673d0fde120c0dc1a6ac"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a2204cf0fa5b66e03634928a753d293a6" id="r_a2204cf0fa5b66e03634928a753d293a6"><td class="memItemLeft" align="right" valign="top">Int_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a2204cf0fa5b66e03634928a753d293a6">fFuncNo</a></td></tr>
|
|
<tr class="memdesc:a2204cf0fa5b66e03634928a753d293a6"><td class="mdescLeft"> </td><td class="mdescRight">Function number extracted from label (x in FUNx) <br /></td></tr>
|
|
<tr class="separator:a2204cf0fa5b66e03634928a753d293a6"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a94f0732e367ff6066a53b2189397478b" id="r_a94f0732e367ff6066a53b2189397478b"><td class="memItemLeft" align="right" valign="top">TString </td><td class="memItemRight" valign="bottom"><a class="el" href="#a94f0732e367ff6066a53b2189397478b">fFuncString</a></td></tr>
|
|
<tr class="memdesc:a94f0732e367ff6066a53b2189397478b"><td class="mdescLeft"> </td><td class="mdescRight">Formatted, human-readable function representation. <br /></td></tr>
|
|
<tr class="separator:a94f0732e367ff6066a53b2189397478b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a1a5c27e1bb628cd40dcac1157fe1a29b" id="r_a1a5c27e1bb628cd40dcac1157fe1a29b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structPMetaData.html">PMetaData</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#a1a5c27e1bb628cd40dcac1157fe1a29b">fMetaData</a></td></tr>
|
|
<tr class="memdesc:a1a5c27e1bb628cd40dcac1157fe1a29b"><td class="mdescLeft"> </td><td class="mdescRight">Metadata from experimental data (field, energy, temperature, etc.) <br /></td></tr>
|
|
<tr class="separator:a1a5c27e1bb628cd40dcac1157fe1a29b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table>
|
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
<div class="textblock"><p>Class for parsing and evaluating mathematical functions from msr-file FUNCTIONS blocks. </p>
|
|
<p>This class handles the complete lifecycle of a function definition:</p><ol type="1">
|
|
<li>Parses the function string using PFunctionGrammar into an AST</li>
|
|
<li>Validates parameter and map references</li>
|
|
<li>Evaluates the function with given parameters and metadata using the visitor pattern</li>
|
|
</ol>
|
|
<p>Functions can reference:</p><ul>
|
|
<li>Fit parameters (PAR1, PAR2, ...)</li>
|
|
<li>Map values (MAP1, MAP2, ...)</li>
|
|
<li>Constants (PI, GAMMA_MU)</li>
|
|
<li>Metadata (magnetic field B, energy EN, temperature T)</li>
|
|
<li>Other functions (FUN1, FUN2, ...)</li>
|
|
</ul>
|
|
<p>Example function definition: </p><div class="fragment"><div class="line">FUN1 = PAR1 * COS(2.0 * <a class="code hl_define" href="PFourier_8cpp.html#a598a3330b3c21701223ee0ca14316eca">PI</a> * GAMMA_MU * B * PAR2)</div>
|
|
<div class="ttc" id="aPFourier_8cpp_html_a598a3330b3c21701223ee0ca14316eca"><div class="ttname"><a href="PFourier_8cpp.html#a598a3330b3c21701223ee0ca14316eca">PI</a></div><div class="ttdeci">#define PI</div><div class="ttdef"><b>Definition</b> <a href="PFourier_8cpp_source.html#l00045">PFourier.cpp:45</a></div></div>
|
|
</div><!-- fragment --><dl class="section see"><dt>See also</dt><dd>PFunctionGrammar for the grammar definition </dd>
|
|
<dd>
|
|
musrfit::ast for the AST structure </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="PFunction_8h_source.html#l00069">69</a> of file <a class="el" href="PFunction_8h_source.html">PFunction.h</a>.</p>
|
|
</div><h2 class="groupheader">Constructor & Destructor Documentation</h2>
|
|
<a id="aadc3ac402057ce784bdcce2d3240690c" name="aadc3ac402057ce784bdcce2d3240690c"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aadc3ac402057ce784bdcce2d3240690c">◆ </a></span>PFunction()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">PFunction::PFunction </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const musrfit::ast::assignment &</td> <td class="paramname"><span class="paramname"><em>assignment</em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Constructor that parses and prepares a function for evaluation. </p>
|
|
<p>Constructor that initializes the function from a parsed AST.</p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">assignment</td><td>Abstract syntax tree (AST) from parsing a function expression</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<p>This constructor stores the AST generated by the Boost.Spirit X3 parser, extracts the function number, and prepares the function for evaluation. The X3 AST is directly suitable for evaluation using the visitor pattern, eliminating the need for conversion to an intermediate tree structure.</p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">assignment</td><td>AST from parsing a function expression (FUN# = expression) </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="PFunction_8cpp_source.html#l00055">55</a> of file <a class="el" href="PFunction_8cpp_source.html">PFunction.cpp</a>.</p>
|
|
|
|
<p class="reference">References <a class="el" href="PFunction_8h_source.html#l00202">fAst</a>, <a class="el" href="PFunction_8h_source.html#l00207">fFuncNo</a>, <a class="el" href="PFunction_8h_source.html#l00208">fFuncString</a>, <a class="el" href="PFunction_8h_source.html#l00206">fValid</a>, and <a class="el" href="PFunction_8cpp_source.html#l00238">GenerateString()</a>.</p>
|
|
|
|
<p class="reference">Referenced by <a class="el" href="PFunction_8cpp_source.html#l00121">FindAndCheckMapAndParamRange()</a>, and <a class="el" href="PFunction_8cpp_source.html#l00318">GenerateStringOperand()</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ac93c8e541a5add6fbc51419e2b0b96fb" name="ac93c8e541a5add6fbc51419e2b0b96fb"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ac93c8e541a5add6fbc51419e2b0b96fb">◆ </a></span>~PFunction()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">PFunction::~PFunction </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 that cleans up resources. </p>
|
|
<p>Destructor that releases resources.</p>
|
|
<p>Cleans up parameter and map vectors. </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="PFunction_8cpp_source.html#l00074">74</a> of file <a class="el" href="PFunction_8cpp_source.html">PFunction.cpp</a>.</p>
|
|
|
|
<p class="reference">References <a class="el" href="PFunction_8h_source.html#l00204">fMap</a>, and <a class="el" href="PFunction_8h_source.html#l00203">fParam</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<h2 class="groupheader">Member Function Documentation</h2>
|
|
<a id="a5043e5f026f8b40c633ed238ab092cd3" name="a5043e5f026f8b40c633ed238ab092cd3"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a5043e5f026f8b40c633ed238ab092cd3">◆ </a></span>CheckMapAndParamRange()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">Bool_t PFunction::CheckMapAndParamRange </td>
|
|
<td>(</td>
|
|
<td class="paramtype">UInt_t</td> <td class="paramname"><span class="paramname"><em>mapSize</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">UInt_t</td> <td class="paramname"><span class="paramname"><em>paramSize</em></span> )</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>Validates that all parameter and map references are within valid ranges. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">mapSize</td><td>Number of available map entries </td></tr>
|
|
<tr><td class="paramname">paramSize</td><td>Number of available fit parameters </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>true if all references are valid, false otherwise</dd></dl>
|
|
<p>Recursively traverses the AST to find all parameter (PAR#) and map (MAP#) references and checks that they are within the specified bounds.</p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">mapSize</td><td>Number of available map entries </td></tr>
|
|
<tr><td class="paramname">paramSize</td><td>Number of available fit parameters </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>true if all references are valid, false otherwise </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="PFunction_8cpp_source.html#l00091">91</a> of file <a class="el" href="PFunction_8cpp_source.html">PFunction.cpp</a>.</p>
|
|
|
|
<p class="reference">References <a class="el" href="PFunction_8h_source.html#l00202">fAst</a>, and <a class="el" href="PFunction_8cpp_source.html#l00121">FindAndCheckMapAndParamRange()</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="af563cd8b5f0ecfe77eba6e1b726d56ff" name="af563cd8b5f0ecfe77eba6e1b726d56ff"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#af563cd8b5f0ecfe77eba6e1b726d56ff">◆ </a></span>Eval()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">Double_t PFunction::Eval </td>
|
|
<td>(</td>
|
|
<td class="paramtype">std::vector< Double_t ></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="structPMetaData.html">PMetaData</a></td> <td class="paramname"><span class="paramname"><em>metaData</em></span> )</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>Evaluates the function with given parameters and metadata. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">param</td><td>Vector of fit parameter values </td></tr>
|
|
<tr><td class="paramname">metaData</td><td>Metadata containing field, energy, temperature, etc. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>Computed function value</dd></dl>
|
|
<p>Uses the visitor pattern to traverse the AST and compute the numeric result. The evaluation applies operators with proper precedence as encoded in the AST.</p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">param</td><td>Vector of fit parameter values </td></tr>
|
|
<tr><td class="paramname">metaData</td><td>Metadata containing field, energy, temperature, etc. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>Computed function value, or 0.0 if invalid </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="PFunction_8cpp_source.html#l00193">193</a> of file <a class="el" href="PFunction_8cpp_source.html">PFunction.cpp</a>.</p>
|
|
|
|
<p class="reference">References <a class="el" href="PFunction_8h_source.html#l00202">fAst</a>, <a class="el" href="PFunction_8h_source.html#l00204">fMap</a>, <a class="el" href="PFunction_8h_source.html#l00209">fMetaData</a>, <a class="el" href="PFunction_8h_source.html#l00203">fParam</a>, and <a class="el" href="PFunction_8h_source.html#l00206">fValid</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a54134ee34beb59bfe9ca19e479ef4d1b" name="a54134ee34beb59bfe9ca19e479ef4d1b"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a54134ee34beb59bfe9ca19e479ef4d1b">◆ </a></span>FindAndCheckMapAndParamRange()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">Bool_t PFunction::FindAndCheckMapAndParamRange </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const musrfit::ast::operand &</td> <td class="paramname"><span class="paramname"><em>operand</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">UInt_t</td> <td class="paramname"><span class="paramname"><em>mapSize</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">UInt_t</td> <td class="paramname"><span class="paramname"><em>paramSize</em></span> )</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel protected">protected</span><span class="mlabel virtual">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Recursively validates parameter and map references in the AST. </p>
|
|
<p>Recursively validates parameter and map references in an operand.</p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">operand</td><td>Current operand being checked </td></tr>
|
|
<tr><td class="paramname">mapSize</td><td>Number of available map entries </td></tr>
|
|
<tr><td class="paramname">paramSize</td><td>Number of available fit parameters </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>true if all references are valid, false otherwise</dd></dl>
|
|
<p>Helper visitor for CheckMapAndParamRange that handles different operand types.</p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">operand</td><td>Current operand being checked </td></tr>
|
|
<tr><td class="paramname">mapSize</td><td>Number of available map entries </td></tr>
|
|
<tr><td class="paramname">paramSize</td><td>Number of available fit parameters </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>true if all references are valid, false otherwise </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="PFunction_8cpp_source.html#l00121">121</a> of file <a class="el" href="PFunction_8cpp_source.html">PFunction.cpp</a>.</p>
|
|
|
|
<p class="reference">References <a class="el" href="PFunction_8cpp_source.html#l00121">FindAndCheckMapAndParamRange()</a>, and <a class="el" href="PFunction_8cpp_source.html#l00055">PFunction()</a>.</p>
|
|
|
|
<p class="reference">Referenced by <a class="el" href="PFunction_8cpp_source.html#l00091">CheckMapAndParamRange()</a>, and <a class="el" href="PFunction_8cpp_source.html#l00121">FindAndCheckMapAndParamRange()</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a63406911e39c1020eaeb1978aee891fc" name="a63406911e39c1020eaeb1978aee891fc"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a63406911e39c1020eaeb1978aee891fc">◆ </a></span>GenerateString()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">TString PFunction::GenerateString </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const musrfit::ast::expression &</td> <td class="paramname"><span class="paramname"><em>expr</em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel protected">protected</span><span class="mlabel virtual">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Generates a human-readable string representation of the AST. </p>
|
|
<p>Generates a human-readable string representation of an expression.</p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">expr</td><td>Expression AST to convert to string </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>Formatted string representation</dd></dl>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">expr</td><td>Expression AST to convert </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>Formatted string </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="PFunction_8cpp_source.html#l00238">238</a> of file <a class="el" href="PFunction_8cpp_source.html">PFunction.cpp</a>.</p>
|
|
|
|
<p class="reference">References <a class="el" href="PFunction_8cpp_source.html#l00238">GenerateString()</a>, and <a class="el" href="PFunction_8cpp_source.html#l00318">GenerateStringOperand()</a>.</p>
|
|
|
|
<p class="reference">Referenced by <a class="el" href="PFunction_8cpp_source.html#l00238">GenerateString()</a>, <a class="el" href="PFunction_8cpp_source.html#l00318">GenerateStringOperand()</a>, and <a class="el" href="PFunction_8cpp_source.html#l00055">PFunction()</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a8b698f76541d92be04205837b66ddc35" name="a8b698f76541d92be04205837b66ddc35"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a8b698f76541d92be04205837b66ddc35">◆ </a></span>GenerateStringOperand()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">TString PFunction::GenerateStringOperand </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const musrfit::ast::operand &</td> <td class="paramname"><span class="paramname"><em>operand</em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel protected">protected</span><span class="mlabel virtual">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Generates a string representation of an operand. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">operand</td><td>Operand AST to convert to string </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>Formatted string representation</dd></dl>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">operand</td><td>Operand AST to convert </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>Formatted string </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="PFunction_8cpp_source.html#l00318">318</a> of file <a class="el" href="PFunction_8cpp_source.html">PFunction.cpp</a>.</p>
|
|
|
|
<p class="reference">References <a class="el" href="PFunction_8cpp_source.html#l00238">GenerateString()</a>, <a class="el" href="PFunction_8cpp_source.html#l00318">GenerateStringOperand()</a>, and <a class="el" href="PFunction_8cpp_source.html#l00055">PFunction()</a>.</p>
|
|
|
|
<p class="reference">Referenced by <a class="el" href="PFunction_8cpp_source.html#l00238">GenerateString()</a>, and <a class="el" href="PFunction_8cpp_source.html#l00318">GenerateStringOperand()</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a2aa767fc5e642fbbf4926289594f5a8f" name="a2aa767fc5e642fbbf4926289594f5a8f"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a2aa767fc5e642fbbf4926289594f5a8f">◆ </a></span>GetFuncNo()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual Int_t PFunction::GetFuncNo </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 class="mlabel virtual">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Returns the function number extracted from the function label. </p>
|
|
<dl class="section return"><dt>Returns</dt><dd>Function number (x from FUNx), or -1 if invalid </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="PFunction_8h_source.html#l00099">99</a> of file <a class="el" href="PFunction_8h_source.html">PFunction.h</a>.</p>
|
|
|
|
<p class="reference">References <a class="el" href="PFunction_8h_source.html#l00207">fFuncNo</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a13c31d1e38013f2a4d92372af0bc3156" name="a13c31d1e38013f2a4d92372af0bc3156"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a13c31d1e38013f2a4d92372af0bc3156">◆ </a></span>GetFuncString()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual TString * PFunction::GetFuncString </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 class="mlabel virtual">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Returns the human-readable string representation of the function. </p>
|
|
<dl class="section return"><dt>Returns</dt><dd>Pointer to formatted function string </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="PFunction_8h_source.html#l00138">138</a> of file <a class="el" href="PFunction_8h_source.html">PFunction.h</a>.</p>
|
|
|
|
<p class="reference">References <a class="el" href="PFunction_8h_source.html#l00208">fFuncString</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a1bb132f2f34fa694e383fcd9007ca5ee" name="a1bb132f2f34fa694e383fcd9007ca5ee"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a1bb132f2f34fa694e383fcd9007ca5ee">◆ </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">virtual Bool_t PFunction::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 class="mlabel virtual">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Checks if the function was successfully parsed and initialized. </p>
|
|
<dl class="section return"><dt>Returns</dt><dd>true if the function is valid, false otherwise </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="PFunction_8h_source.html#l00091">91</a> of file <a class="el" href="PFunction_8h_source.html">PFunction.h</a>.</p>
|
|
|
|
<p class="reference">References <a class="el" href="PFunction_8h_source.html#l00206">fValid</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a9b1368054630cd5b0934d1918f8c484d" name="a9b1368054630cd5b0934d1918f8c484d"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a9b1368054630cd5b0934d1918f8c484d">◆ </a></span>SetMap()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual void PFunction::SetMap </td>
|
|
<td>(</td>
|
|
<td class="paramtype">std::vector< Int_t ></td> <td class="paramname"><span class="paramname"><em>map</em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel virtual">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Sets the map vector for parameter indirection. </p>
|
|
<p>Maps allow indirect parameter references. MAP# references fMap[#-1], which then indexes into the parameter vector.</p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">map</td><td>Vector of parameter indices (1-based) </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="PFunction_8h_source.html#l00130">130</a> of file <a class="el" href="PFunction_8h_source.html">PFunction.h</a>.</p>
|
|
|
|
<p class="reference">References <a class="el" href="PFunction_8h_source.html#l00204">fMap</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<h2 class="groupheader">Member Data Documentation</h2>
|
|
<a id="a3a80dd233f364205a75df4f96521e655" name="a3a80dd233f364205a75df4f96521e655"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a3a80dd233f364205a75df4f96521e655">◆ </a></span>fAst</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">musrfit::ast::expression PFunction::fAst</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>Abstract syntax tree for the expression. </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="PFunction_8h_source.html#l00202">202</a> of file <a class="el" href="PFunction_8h_source.html">PFunction.h</a>.</p>
|
|
|
|
<p class="reference">Referenced by <a class="el" href="PFunction_8cpp_source.html#l00091">CheckMapAndParamRange()</a>, <a class="el" href="PFunction_8cpp_source.html#l00193">Eval()</a>, and <a class="el" href="PFunction_8cpp_source.html#l00055">PFunction()</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a2204cf0fa5b66e03634928a753d293a6" name="a2204cf0fa5b66e03634928a753d293a6"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a2204cf0fa5b66e03634928a753d293a6">◆ </a></span>fFuncNo</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">Int_t PFunction::fFuncNo</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>Function number extracted from label (x in FUNx) </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="PFunction_8h_source.html#l00207">207</a> of file <a class="el" href="PFunction_8h_source.html">PFunction.h</a>.</p>
|
|
|
|
<p class="reference">Referenced by <a class="el" href="PFunction_8h_source.html#l00099">GetFuncNo()</a>, and <a class="el" href="PFunction_8cpp_source.html#l00055">PFunction()</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a94f0732e367ff6066a53b2189397478b" name="a94f0732e367ff6066a53b2189397478b"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a94f0732e367ff6066a53b2189397478b">◆ </a></span>fFuncString</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">TString PFunction::fFuncString</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>Formatted, human-readable function representation. </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="PFunction_8h_source.html#l00208">208</a> of file <a class="el" href="PFunction_8h_source.html">PFunction.h</a>.</p>
|
|
|
|
<p class="reference">Referenced by <a class="el" href="PFunction_8h_source.html#l00138">GetFuncString()</a>, and <a class="el" href="PFunction_8cpp_source.html#l00055">PFunction()</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="af80edee8699b8666c77336c0e2a46baa" name="af80edee8699b8666c77336c0e2a46baa"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#af80edee8699b8666c77336c0e2a46baa">◆ </a></span>fMap</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::vector<Int_t> PFunction::fMap</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>Map vector for indirect parameter references. </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="PFunction_8h_source.html#l00204">204</a> of file <a class="el" href="PFunction_8h_source.html">PFunction.h</a>.</p>
|
|
|
|
<p class="reference">Referenced by <a class="el" href="PFunction_8cpp_source.html#l00193">Eval()</a>, <a class="el" href="PFunction_8h_source.html#l00130">SetMap()</a>, and <a class="el" href="PFunction_8cpp_source.html#l00074">~PFunction()</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a1a5c27e1bb628cd40dcac1157fe1a29b" name="a1a5c27e1bb628cd40dcac1157fe1a29b"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a1a5c27e1bb628cd40dcac1157fe1a29b">◆ </a></span>fMetaData</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="structPMetaData.html">PMetaData</a> PFunction::fMetaData</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>Metadata from experimental data (field, energy, temperature, etc.) </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="PFunction_8h_source.html#l00209">209</a> of file <a class="el" href="PFunction_8h_source.html">PFunction.h</a>.</p>
|
|
|
|
<p class="reference">Referenced by <a class="el" href="PFunction_8cpp_source.html#l00193">Eval()</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ad357729df47ef5d2fcd78652f56ba0bf" name="ad357729df47ef5d2fcd78652f56ba0bf"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ad357729df47ef5d2fcd78652f56ba0bf">◆ </a></span>fParam</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::vector<Double_t> PFunction::fParam</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>Current fit parameter values for evaluation. </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="PFunction_8h_source.html#l00203">203</a> of file <a class="el" href="PFunction_8h_source.html">PFunction.h</a>.</p>
|
|
|
|
<p class="reference">Referenced by <a class="el" href="PFunction_8cpp_source.html#l00193">Eval()</a>, and <a class="el" href="PFunction_8cpp_source.html#l00074">~PFunction()</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a323a06e5b4e7673d0fde120c0dc1a6ac" name="a323a06e5b4e7673d0fde120c0dc1a6ac"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a323a06e5b4e7673d0fde120c0dc1a6ac">◆ </a></span>fValid</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">Bool_t PFunction::fValid</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>Validity flag: true if function parsed and initialized successfully. </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="PFunction_8h_source.html#l00206">206</a> of file <a class="el" href="PFunction_8h_source.html">PFunction.h</a>.</p>
|
|
|
|
<p class="reference">Referenced by <a class="el" href="PFunction_8cpp_source.html#l00193">Eval()</a>, <a class="el" href="PFunction_8h_source.html#l00091">IsValid()</a>, and <a class="el" href="PFunction_8cpp_source.html#l00055">PFunction()</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="PFunction_8h_source.html">PFunction.h</a></li>
|
|
<li>/workspace/LMU/musrfit/src/classes/<a class="el" href="PFunction_8cpp_source.html">PFunction.cpp</a></li>
|
|
</ul>
|
|
</div><!-- contents -->
|
|
</div><!-- doc-content -->
|
|
<!-- start footer part -->
|
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
|
<ul>
|
|
<li class="navelem"><a class="el" href="classPFunction.html">PFunction</a></li>
|
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
|
</ul>
|
|
</div>
|
|
</body>
|
|
</html>
|