Public Member Functions | Private Attributes
PyFunctionRep Class Reference

This class is the public Python interface wrap for the FunctionRep class. More...

#include <PyFunctionRep.h>

Collaboration diagram for PyFunctionRep:
Collaboration graph
[legend]

List of all members.

Public Member Functions

void addTo (QtDisplay *display)
 Adds the function on to the display.
const std::vector< std::vector
< double > > & 
covarianceMatrix ()
 Returns the covariance matrix from the last fit.
QtDisplaycreateResidualsDisplay () const
 Returns an XY Plot of the residuals between the function and the data.
int degreesOfFreedom ()
 Returns the number of degrees-of-freedom.
bool fitFunction ()
 Fits the function to the target DataRep.
const std::string & getFitterName () const
 Returns the name of the Fitter.
hippodraw::DataRepgetRep () const
 Returns the wrapped FunctionRep object.
double objectiveValue ()
 Returns the value of objective value.
double operator() (double x)
 Returns the function value at a given x.
const std::vector< double > & parameters () const
 Returns the current values of the parameters.
const std::vector< std::string > & parmNames () const
 Returns the names of the parameters.
const std::vector< double > & principleErrors () const
 Returns the principle error values associated with the parameters.
 PyFunctionRep (const std::string &function_name, PyDataRep *rep)
 Constructor taking function name and target DataRep.
 PyFunctionRep (FunctionBase *function, PyDataRep *rep)
 Constructor taking function and target DataRep.
 PyFunctionRep (FunctionBase *function)
 Constructor taking function and no target.
void setFitRange (double low, double high)
 Sets the cut to limit range of fitting.
void setFitRangeEnabled (bool yes=true)
 Sets use of a fitting range on or off.
void setFitter (const std::string &name)
 Sets the Fitter with name in the FitterFactory.
void setFixedFlags (const std::vector< int > &flags)
 Set the fixed flags of the parameters.
void setParameters (const std::vector< double > &params)
 Set the parameter values.

Private Attributes

FunctionRepm_rep
 The wrapped FunctionRep object.
PlotterBasem_target
 The PlotterBase on which the FunctionRep is displayed.

Detailed Description

This class is the public Python interface wrap for the FunctionRep class.

Its purpose to to lock the application thread, when needed, before invoking methods in the FunctionRep.

Requests:
@@ Return covariance matrix.
Todo:
Could make this a derived class of FunctionRep so that methods that do not need wrapping could be called directly.
@author James Chiang <jchiang@slac.stanford.edu>
@author Paul F. Kunz <Paul_Kunz@slac.stanford.edu>

Definition at line 41 of file PyFunctionRep.h.


Constructor & Destructor Documentation

PyFunctionRep ( const std::string &  function_name,
PyDataRep rep 
)

Constructor taking function name and target DataRep.

Definition at line 178 of file PyFunctionRep.cxx.

PyFunctionRep ( FunctionBase function,
PyDataRep rep 
)

Constructor taking function and target DataRep.

Definition at line 194 of file PyFunctionRep.cxx.

PyFunctionRep ( FunctionBase function)

Constructor taking function and no target.

Definition at line 211 of file PyFunctionRep.cxx.


Member Function Documentation

void addTo ( QtDisplay display)

Adds the function on to the display.

Definition at line 231 of file PyFunctionRep.cxx.

References FunctionController::addFunction(), and QtDisplay::display().

const vector< vector< double > > & covarianceMatrix ( )

Returns the covariance matrix from the last fit.

Definition at line 334 of file PyFunctionRep.cxx.

Returns an XY Plot of the residuals between the function and the data.

Definition at line 388 of file PyFunctionRep.cxx.

Returns the number of degrees-of-freedom.

Definition at line 347 of file PyFunctionRep.cxx.

References FunctionController::getDegreesOfFreedom().

bool fitFunction ( )

Fits the function to the target DataRep.

Fits the function to this object's target DataRep. Uses the FunctionController::fitFunction member function to apply the application logic.

Definition at line 283 of file PyFunctionRep.cxx.

const std::string & getFitterName ( ) const

Returns the name of the Fitter.

Definition at line 381 of file PyFunctionRep.cxx.

DataRep * getRep ( ) const

Returns the wrapped FunctionRep object.

Definition at line 226 of file PyFunctionRep.cxx.

Referenced by QtDisplay::addDataRep().

double objectiveValue ( )

Returns the value of objective value.

Bug:
This function only works correctly if there is only one DataRep contained by the plotter.

The constructor of this class should remember which DataRep object the function is attached to.

Definition at line 317 of file PyFunctionRep.cxx.

References FunctionController::getObjectiveValue().

double operator() ( double  x)

Returns the function value at a given x.

Definition at line 295 of file PyFunctionRep.cxx.

References FunctionController::getComposite(), and FunctionRep::getFunction().

const vector< double > & parameters ( ) const

Returns the current values of the parameters.

Todo:
Enable access to parameters of composite functions via function indexes. Do this for parameters(), setParameters(), and setFixedFlags() methods.

Definition at line 258 of file PyFunctionRep.cxx.

const vector< std::string > & parmNames ( ) const

Returns the names of the parameters.

Definition at line 248 of file PyFunctionRep.cxx.

const vector< double > & principleErrors ( ) const

Returns the principle error values associated with the parameters.

Definition at line 267 of file PyFunctionRep.cxx.

void setFitRange ( double  low,
double  high 
)

Sets the cut to limit range of fitting.

Definition at line 400 of file PyFunctionRep.cxx.

void setFitRangeEnabled ( bool  yes = true)

Sets use of a fitting range on or off.

Bug:
@@@ when fit Range is disabled should not display it.

Definition at line 410 of file PyFunctionRep.cxx.

void setFitter ( const std::string &  name)

Sets the Fitter with name in the FitterFactory.

Definition at line 373 of file PyFunctionRep.cxx.

void setFixedFlags ( const std::vector< int > &  flags)

Set the fixed flags of the parameters.

Definition at line 362 of file PyFunctionRep.cxx.

void setParameters ( const std::vector< double > &  params)

Set the parameter values.

Definition at line 276 of file PyFunctionRep.cxx.


Member Data Documentation

FunctionRep* m_rep [private]

The wrapped FunctionRep object.

Definition at line 47 of file PyFunctionRep.h.

PlotterBase* m_target [private]

The PlotterBase on which the FunctionRep is displayed.

Definition at line 50 of file PyFunctionRep.h.


The documentation for this class was generated from the following files:

Generated for HippoDraw Class Library by doxygen