EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ThreeDeePolySpace Class Reference

#include <EicRoot/blob/master/eic/ayk/ThreeDeePolySpace.h>

+ Collaboration diagram for ThreeDeePolySpace:

Public Member Functions

 ThreeDeePolySpace (int max_power[3], int _point_num, unsigned char _parity[3]=0)
 
void calculateFittingPolynomial (ThreeDeePolynomial *fit)
 
void buildOrthogonalPolynomials ()
 
double getNaivePolyFitError (double xx[3])
 

Public Attributes

int point_num
 
ThreeDeePolyPointpoints
 

Private Member Functions

int getNDF ()
 
void polyCopy (ThreeDeePolynomial *dest, ThreeDeePolynomial *source)
 
double polyProduct (ThreeDeePolynomial *p1, ThreeDeePolynomial *p2)
 
double polyProjection (ThreeDeePolynomial *poly)
 
int buildBasisGradients ()
 
double getPolyFitChiSquare (ThreeDeePolynomial *fit)
 
double getRealisticPolyFitError (ThreeDeePolynomial *fit, double xx[3])
 

Private Attributes

int _max_power [3]
 
int degrees_of_freedom [3]
 
double norm_cutoff
 
unsigned char parity [3]
 
int dim
 
ThreeDeePolynomial ** basis
 
ThreeDeePolynomial *** dbasis
 
ThreeDeePolynomialbuffer
 

Friends

class ThreeDeePolynomial
 

Detailed Description

Definition at line 28 of file ThreeDeePolySpace.h.

View newest version in sPHENIX GitHub at line 28 of file ThreeDeePolySpace.h

Constructor & Destructor Documentation

ThreeDeePolySpace::ThreeDeePolySpace ( int  max_power[3],
int  _point_num,
unsigned char  _parity[3] = 0 
)

Definition at line 21 of file ThreeDeePolySpace.cxx.

View newest version in sPHENIX GitHub at line 21 of file ThreeDeePolySpace.cxx

References _BOTH_, _EVEN_, _max_power, _ODD_, basis, dbasis, degrees_of_freedom, dim, parity, point_num, points, and ThreeDeePolynomial.

Member Function Documentation

int ThreeDeePolySpace::buildBasisGradients ( )
private

Definition at line 195 of file ThreeDeePolySpace.cxx.

View newest version in sPHENIX GitHub at line 195 of file ThreeDeePolySpace.cxx

References basis, dbasis, and dim.

void ThreeDeePolySpace::buildOrthogonalPolynomials ( )

Definition at line 151 of file ThreeDeePolySpace.cxx.

View newest version in sPHENIX GitHub at line 151 of file ThreeDeePolySpace.cxx

References _max_power, _X_, _Y_, _Z_, basis, ThreeDeePolynomial::cff, dim, ThreeDeePolynomial::increment(), PARITY_CHECK, polyCopy(), and polyProduct().

Referenced by Mgrid::directFieldValue(), MgridInterpolation::postCookMultiDimCommon(), MgridInterpolation::postcookSequentialHighCommon(), and MgridInterpolation::prepairIrregularCase().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ThreeDeePolySpace::calculateFittingPolynomial ( ThreeDeePolynomial fit)

Definition at line 211 of file ThreeDeePolySpace.cxx.

View newest version in sPHENIX GitHub at line 211 of file ThreeDeePolySpace.cxx

References basis, ThreeDeePolynomial::convertLinearToCff(), dim, ThreeDeePolynomial::linear, and polyProjection().

Referenced by Mgrid::directFieldValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

double ThreeDeePolySpace::getNaivePolyFitError ( double  xx[3])

Definition at line 244 of file ThreeDeePolySpace.cxx.

View newest version in sPHENIX GitHub at line 244 of file ThreeDeePolySpace.cxx

References basis, dim, check_license::err(), SQR, and value.

Referenced by Mgrid::directFieldValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int ThreeDeePolySpace::getNDF ( )
private

Definition at line 78 of file ThreeDeePolySpace.cxx.

View newest version in sPHENIX GitHub at line 78 of file ThreeDeePolySpace.cxx

References dim, and point_num.

Referenced by getRealisticPolyFitError().

+ Here is the caller graph for this function:

double ThreeDeePolySpace::getPolyFitChiSquare ( ThreeDeePolynomial fit)
private

Definition at line 225 of file ThreeDeePolySpace.cxx.

View newest version in sPHENIX GitHub at line 225 of file ThreeDeePolySpace.cxx

References point_num, and points.

Referenced by getRealisticPolyFitError().

+ Here is the caller graph for this function:

double ThreeDeePolySpace::getRealisticPolyFitError ( ThreeDeePolynomial fit,
double  xx[3] 
)
private

Definition at line 265 of file ThreeDeePolySpace.cxx.

View newest version in sPHENIX GitHub at line 265 of file ThreeDeePolySpace.cxx

References basis, dim, check_license::err(), getNDF(), getPolyFitChiSquare(), SQR, and value.

+ Here is the call graph for this function:

void ThreeDeePolySpace::polyCopy ( ThreeDeePolynomial dest,
ThreeDeePolynomial source 
)
private

Definition at line 127 of file ThreeDeePolySpace.cxx.

View newest version in sPHENIX GitHub at line 127 of file ThreeDeePolySpace.cxx

References _max_power, _X_, _Y_, _Z_, ThreeDeePolynomial::cff, and PARITY_CHECK.

Referenced by buildOrthogonalPolynomials().

+ Here is the caller graph for this function:

double ThreeDeePolySpace::polyProduct ( ThreeDeePolynomial p1,
ThreeDeePolynomial p2 
)
private

Definition at line 91 of file ThreeDeePolySpace.cxx.

View newest version in sPHENIX GitHub at line 91 of file ThreeDeePolySpace.cxx

References point_num, and points.

Referenced by buildOrthogonalPolynomials(), and ThreeDeePolynomial::normalize().

+ Here is the caller graph for this function:

double ThreeDeePolySpace::polyProjection ( ThreeDeePolynomial poly)
private

Definition at line 108 of file ThreeDeePolySpace.cxx.

View newest version in sPHENIX GitHub at line 108 of file ThreeDeePolySpace.cxx

References ThreeDeePolynomial::off, point_num, and points.

Referenced by calculateFittingPolynomial().

+ Here is the caller graph for this function:

Friends And Related Function Documentation

friend class ThreeDeePolynomial
friend

Definition at line 29 of file ThreeDeePolySpace.h.

View newest version in sPHENIX GitHub at line 29 of file ThreeDeePolySpace.h

Referenced by ThreeDeePolySpace().

Member Data Documentation

ThreeDeePolynomial* ThreeDeePolySpace::buffer
private

Definition at line 76 of file ThreeDeePolySpace.h.

View newest version in sPHENIX GitHub at line 76 of file ThreeDeePolySpace.h

ThreeDeePolynomial*** ThreeDeePolySpace::dbasis
private

Definition at line 73 of file ThreeDeePolySpace.h.

View newest version in sPHENIX GitHub at line 73 of file ThreeDeePolySpace.h

Referenced by buildBasisGradients(), and ThreeDeePolySpace().

int ThreeDeePolySpace::degrees_of_freedom[3]
private

Definition at line 56 of file ThreeDeePolySpace.h.

View newest version in sPHENIX GitHub at line 56 of file ThreeDeePolySpace.h

Referenced by ThreeDeePolySpace().

double ThreeDeePolySpace::norm_cutoff
private

Definition at line 63 of file ThreeDeePolySpace.h.

View newest version in sPHENIX GitHub at line 63 of file ThreeDeePolySpace.h

Referenced by ThreeDeePolynomial::normalize().

unsigned char ThreeDeePolySpace::parity[3]
private

Definition at line 66 of file ThreeDeePolySpace.h.

View newest version in sPHENIX GitHub at line 66 of file ThreeDeePolySpace.h

Referenced by ThreeDeePolySpace().

int ThreeDeePolySpace::point_num

Definition at line 41 of file ThreeDeePolySpace.h.

View newest version in sPHENIX GitHub at line 41 of file ThreeDeePolySpace.h

Referenced by getNDF(), getPolyFitChiSquare(), polyProduct(), polyProjection(), and ThreeDeePolySpace().


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