ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ptwXY_interpolation.cc File Reference
#include <cmath>
#include <float.h>
#include "ptwXY.h"
+ Include dependency graph for ptwXY_interpolation.cc:

Go to the source code of this file.

Macros

#define minEps   5e-16
 

Typedefs

typedef nfu_status(* interpolation_func )(ptwXYPoints *desc, double x1, double y1, double x2, double y2, int depth)
 

Functions

static double ptwXY_flatInterpolationToLinear_eps (double px, double eps)
 
static nfu_status ptwXY_toOtherInterpolation2 (ptwXYPoints *desc, ptwXYPoints *src, interpolation_func func)
 
static nfu_status ptwXY_LogLogToLinLin (ptwXYPoints *desc, double x1, double y1, double x2, double y2, int depth)
 
static nfu_status ptwXY_LinLogToLinLin (ptwXYPoints *desc, double x1, double y1, double x2, double y2, int depth)
 
static nfu_status ptwXY_LogLinToLinLin (ptwXYPoints *desc, double x1, double y1, double x2, double y2, int depth)
 
static nfu_status ptwXY_otherToLinLin (ptwXYPoints *desc, double x1, double y1, double x2, double y2, int depth)
 
nfu_status ptwXY_interpolatePoint (ptwXY_interpolation interpolation, double x, double *y, double x1, double y1, double x2, double y2)
 
ptwXYPointsptwXY_flatInterpolationToLinear (ptwXYPoints *ptwXY, double lowerEps, double upperEps, nfu_status *status)
 
ptwXYPointsptwXY_toOtherInterpolation (ptwXYPoints *ptwXY, ptwXY_interpolation interpolationTo, double accuracy, nfu_status *status)
 
ptwXYPointsptwXY_toUnitbase (ptwXYPoints *ptwXY, nfu_status *status)
 
ptwXYPointsptwXY_fromUnitbase (ptwXYPoints *ptwXY, double xMin, double xMax, nfu_status *status)
 
ptwXYPointsptwXY_unitbaseInterpolate (double w, double w1, ptwXYPoints *ptwXY1, double w2, ptwXYPoints *ptwXY2, nfu_status *status)
 

Macro Definition Documentation

#define minEps   5e-16

Typedef Documentation

typedef nfu_status(* interpolation_func)(ptwXYPoints *desc, double x1, double y1, double x2, double y2, int depth)

Definition at line 19 of file ptwXY_interpolation.cc.

View newest version in sPHENIX GitHub at line 19 of file ptwXY_interpolation.cc

Function Documentation

ptwXYPoints* ptwXY_flatInterpolationToLinear ( ptwXYPoints ptwXY,
double  lowerEps,
double  upperEps,
nfu_status status 
)
static double ptwXY_flatInterpolationToLinear_eps ( double  px,
double  eps 
)
static

Definition at line 137 of file ptwXY_interpolation.cc.

View newest version in sPHENIX GitHub at line 137 of file ptwXY_interpolation.cc

References eps, and x.

Referenced by ptwXY_flatInterpolationToLinear().

+ Here is the caller graph for this function:

ptwXYPoints* ptwXY_fromUnitbase ( ptwXYPoints ptwXY,
double  xMin,
double  xMax,
nfu_status status 
)

Definition at line 331 of file ptwXY_interpolation.cc.

View newest version in sPHENIX GitHub at line 331 of file ptwXY_interpolation.cc

References DBL_EPSILON, dx, BTOF::length, ptwXYPoints_s::length, n, nfu_tooFewPoints, ptwXYPoints_s::points, ptwXY_clone(), ptwXYPoint_s::x, and ptwXYPoint_s::y.

Referenced by ptwXY_unitbaseInterpolate().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

nfu_status ptwXY_interpolatePoint ( ptwXY_interpolation  interpolation,
double  x,
double *  y,
double  x1,
double  y1,
double  x2,
double  y2 
)

Definition at line 30 of file ptwXY_interpolation.cc.

View newest version in sPHENIX GitHub at line 30 of file ptwXY_interpolation.cc

References G4Exp(), G4Log(), nfu_invalidInterpolation, nfu_Okay, nfu_otherInterpolation, ptwXY_interpolationFlat, ptwXY_interpolationLinLin, ptwXY_interpolationLinLog, ptwXY_interpolationLogLin, ptwXY_interpolationLogLog, ptwXY_interpolationOther, x, y1, and y2.

Referenced by ptwXY_applyFunction2(), ptwXY_applyFunctionZeroCrossing(), ptwXY_convolution2(), ptwXY_createFromFunctionBisect(), ptwXY_dullEdges(), ptwXY_getValueAtX(), ptwXY_integrate(), ptwXY_integrateWithFunction3(), ptwXY_integrateWithWeight_sqrt_x(), ptwXY_integrateWithWeight_x(), ptwXY_thicken(), ptwXY_thin2(), and ptwXY_union().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static nfu_status ptwXY_LinLogToLinLin ( ptwXYPoints desc,
double  x1,
double  y1,
double  x2,
double  y2,
int  depth 
)
static

Definition at line 252 of file ptwXY_interpolation.cc.

View newest version in sPHENIX GitHub at line 252 of file ptwXY_interpolation.cc

References ptwXYPoints_s::accuracy, G4Exp(), G4Log(), nfu_Okay, ptwXY_setValueAtX(), x, x1, y, and y1.

Referenced by ptwXY_toOtherInterpolation().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static nfu_status ptwXY_LogLinToLinLin ( ptwXYPoints desc,
double  x1,
double  y1,
double  x2,
double  y2,
int  depth 
)
static

Definition at line 269 of file ptwXY_interpolation.cc.

View newest version in sPHENIX GitHub at line 269 of file ptwXY_interpolation.cc

References ptwXYPoints_s::accuracy, G4Log(), nfu_Okay, ptwXY_setValueAtX(), x, x1, y, and y1.

Referenced by ptwXY_toOtherInterpolation().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static nfu_status ptwXY_LogLogToLinLin ( ptwXYPoints desc,
double  x1,
double  y1,
double  x2,
double  y2,
int  depth 
)
static

Definition at line 225 of file ptwXY_interpolation.cc.

View newest version in sPHENIX GitHub at line 225 of file ptwXY_interpolation.cc

References ptwXYPoints_s::accuracy, e, G4Log(), G4Pow::GetInstance(), nfu_Okay, G4Pow::powA(), ptwXY_setValueAtX(), Acts::UnitConstants::u, v2, w, x, x1, y, and y1.

Referenced by ptwXY_toOtherInterpolation().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static nfu_status ptwXY_otherToLinLin ( ptwXYPoints desc,
double  x1,
double  y1,
double  x2,
double  y2,
int  depth 
)
static

Definition at line 288 of file ptwXY_interpolation.cc.

View newest version in sPHENIX GitHub at line 288 of file ptwXY_interpolation.cc

References ptwXYPoints_s::accuracy, ptwXY_interpolationOtherInfo::argList, ptwXY_interpolationOtherInfo::getValueFunc, ptwXYPoints_s::interpolationOtherInfo, nfu_Okay, ptwXY_setValueAtX(), x, x2, and y.

Referenced by ptwXY_toOtherInterpolation().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static nfu_status ptwXY_toOtherInterpolation2 ( ptwXYPoints desc,
ptwXYPoints src,
interpolation_func  func 
)
static

Definition at line 201 of file ptwXY_interpolation.cc.

View newest version in sPHENIX GitHub at line 201 of file ptwXY_interpolation.cc

References func, ptwXYPoints_s::length, nfu_Okay, ptwXYPoints_s::points, ptwXY_simpleCoalescePoints(), ptwXYPoint_s::x, x1, x2, ptwXYPoint_s::y, y1, and y2.

Referenced by ptwXY_toOtherInterpolation().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ptwXYPoints* ptwXY_toUnitbase ( ptwXYPoints ptwXY,
nfu_status status 
)

Definition at line 306 of file ptwXY_interpolation.cc.

View newest version in sPHENIX GitHub at line 306 of file ptwXY_interpolation.cc

References dx, BTOF::length, ptwXYPoints_s::length, n, nfu_tooFewPoints, ptwXYPoints_s::points, ptwXY_clone(), ptwXYPoint_s::x, and ptwXYPoint_s::y.

Referenced by ptwXY_unitbaseInterpolate().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ptwXYPoints* ptwXY_unitbaseInterpolate ( double  w,
double  w1,
ptwXYPoints ptwXY1,
double  w2,
ptwXYPoints ptwXY2,
nfu_status status 
)

Definition at line 363 of file ptwXY_interpolation.cc.

View newest version in sPHENIX GitHub at line 363 of file ptwXY_interpolation.cc

References a, f, Acts::UnitConstants::g, BTOF::length, ptwXYPoints_s::length, n1, nfu_XOutsideDomain, ptwXYPoints_s::points, ptwXY_add_ptwXY(), ptwXY_clone(), ptwXY_free(), ptwXY_fromUnitbase(), ptwXY_toUnitbase(), r, ptwXYPoint_s::x, and ptwXYPoint_s::y.

+ Here is the call graph for this function: