Geant4  10.02.p01
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)
 
ptwXYPoints * ptwXY_flatInterpolationToLinear (ptwXYPoints *ptwXY, double lowerEps, double upperEps, nfu_status *status)
 
ptwXYPoints * ptwXY_toOtherInterpolation (ptwXYPoints *ptwXY, ptwXY_interpolation interpolationTo, double accuracy, nfu_status *status)
 
ptwXYPoints * ptwXY_toUnitbase (ptwXYPoints *ptwXY, nfu_status *status)
 
ptwXYPoints * ptwXY_fromUnitbase (ptwXYPoints *ptwXY, double xMin, double xMax, nfu_status *status)
 
ptwXYPoints * ptwXY_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.

Function Documentation

ptwXYPoints* ptwXY_flatInterpolationToLinear ( ptwXYPoints *  ptwXY,
double  lowerEps,
double  upperEps,
nfu_status *  status 
)

Definition at line 74 of file ptwXY_interpolation.cc.

References minEps, n, ptwXY_flatInterpolationToLinear_eps(), ptwXY_free(), ptwXY_new(), ptwXY_setValueAtX(), ptwXY_simpleCoalescePoints(), and x.

+ Here is the call graph for this function:

static double ptwXY_flatInterpolationToLinear_eps ( double  px,
double  eps 
)
static

Definition 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.

References DBL_EPSILON, n, and ptwXY_clone().

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.

References G4Exp(), G4Log(), and x.

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.

References G4Exp(), G4Log(), ptwXY_setValueAtX(), and x.

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.

References G4Log(), ptwXY_setValueAtX(), and x.

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.

References G4Log(), G4Pow::GetInstance(), G4Pow::powA(), ptwXY_setValueAtX(), w, and x.

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.

References ptwXY_setValueAtX(), and x.

Referenced by ptwXY_toOtherInterpolation().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ptwXYPoints* ptwXY_toOtherInterpolation ( ptwXYPoints *  ptwXY,
ptwXY_interpolation  interpolationTo,
double  accuracy,
nfu_status *  status 
)

Definition at line 153 of file ptwXY_interpolation.cc.

References ptwXY_clone(), ptwXY_cloneToInterpolation(), ptwXY_free(), ptwXY_LinLogToLinLin(), ptwXY_LogLinToLinLin(), ptwXY_LogLogToLinLin(), ptwXY_otherToLinLin(), and ptwXY_toOtherInterpolation2().

+ Here is the call 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.

References ptwXY_simpleCoalescePoints().

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.

References n, and ptwXY_clone().

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.

References a, g, ptwXY_add_ptwXY(), ptwXY_clone(), ptwXY_free(), ptwXY_fromUnitbase(), and ptwXY_toUnitbase().

+ Here is the call graph for this function: