Geant4  10.02
ptwXY_convenient.cc File Reference
#include <stdlib.h>
#include <cmath>
#include <float.h>
#include "ptwXY.h"
+ Include dependency graph for ptwXY_convenient.cc:

Go to the source code of this file.

Macros

#define minEps   5e-16
 

Functions

static nfu_status ptwXY_createGaussianCenteredSigma1_2 (ptwXYPoints *ptwXY, double x1, double y1, double x2, double y2, int addX1Point)
 
ptwXPoints * ptwXY_getXArray (ptwXYPoints *ptwXY, nfu_status *status)
 
nfu_status ptwXY_dullEdges (ptwXYPoints *ptwXY, double lowerEps, double upperEps, int positiveXOnly)
 
nfu_status ptwXY_mergeClosePoints (ptwXYPoints *ptwXY, double epsilon)
 
ptwXYPoints * ptwXY_intersectionWith_ptwX (ptwXYPoints *ptwXY, ptwXPoints *ptwX, nfu_status *status)
 
nfu_status ptwXY_areDomainsMutual (ptwXYPoints *ptwXY1, ptwXYPoints *ptwXY2)
 
nfu_status ptwXY_tweakDomainsToMutualify (ptwXYPoints *ptwXY1, ptwXYPoints *ptwXY2, int epsilonFactor, double epsilon)
 
nfu_status ptwXY_mutualifyDomains (ptwXYPoints *ptwXY1, double lowerEps1, double upperEps1, int positiveXOnly1, ptwXYPoints *ptwXY2, double lowerEps2, double upperEps2, int positiveXOnly2)
 
nfu_status ptwXY_copyToC_XY (ptwXYPoints *ptwXY, int64_t index1, int64_t index2, int64_t allocatedSize, int64_t *numberOfPoints, double *xys)
 
nfu_status ptwXY_valueTo_ptwXAndY (ptwXYPoints *ptwXY, double **xs, double **ys)
 
ptwXYPoints * ptwXY_valueTo_ptwXY (double x1, double x2, double y, nfu_status *status)
 
ptwXYPoints * ptwXY_createGaussianCenteredSigma1 (double accuracy, nfu_status *status)
 
ptwXYPoints * ptwXY_createGaussian (double accuracy, double xCenter, double sigma, double amplitude, double xMin, double xMax, double, nfu_status *status)
 

Macro Definition Documentation

#define minEps   5e-16

Function Documentation

nfu_status ptwXY_areDomainsMutual ( ptwXYPoints *  ptwXY1,
ptwXYPoints *  ptwXY2 
)

Definition at line 257 of file ptwXY_convenient.cc.

References ptwXY_getPointAtIndex_Unsafely().

Referenced by ptwXY_binary_ptwXY(), ptwXY_div_ptwXY(), and ptwXY_mutualifyDomains().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

nfu_status ptwXY_copyToC_XY ( ptwXYPoints *  ptwXY,
int64_t  index1,
int64_t  index2,
int64_t  allocatedSize,
int64_t *  numberOfPoints,
double *  xys 
)

Definition at line 424 of file ptwXY_convenient.cc.

References ptwXY_simpleCoalescePoints().

+ Here is the call graph for this function:

ptwXYPoints* ptwXY_createGaussian ( double  accuracy,
double  xCenter,
double  sigma,
double  amplitude,
double  xMin,
double  xMax,
double  ,
nfu_status *  status 
)

Definition at line 566 of file ptwXY_convenient.cc.

References ptwXY_createGaussianCenteredSigma1(), ptwXY_free(), and ptwXY_xSlice().

+ Here is the call graph for this function:

ptwXYPoints* ptwXY_createGaussianCenteredSigma1 ( double  accuracy,
nfu_status *  status 
)

Definition at line 492 of file ptwXY_convenient.cc.

References G4Exp(), G4Log(), n, G4InuclParticleNames::pp, ptwXY_coalescePoints(), ptwXY_createGaussianCenteredSigma1_2(), ptwXY_free(), ptwXY_new(), and ptwXY_setValueAtX().

Referenced by ptwXY_createGaussian().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static nfu_status ptwXY_createGaussianCenteredSigma1_2 ( ptwXYPoints *  ptwXY,
double  x1,
double  y1,
double  x2,
double  y2,
int  addX1Point 
)
static

Definition at line 549 of file ptwXY_convenient.cc.

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

Referenced by ptwXY_createGaussianCenteredSigma1().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

nfu_status ptwXY_dullEdges ( ptwXYPoints *  ptwXY,
double  lowerEps,
double  upperEps,
int  positiveXOnly 
)

Definition at line 42 of file ptwXY_convenient.cc.

References minEps, ptwXY_getPointAtIndex_Unsafely(), ptwXY_getValueAtX(), ptwXY_interpolatePoint(), ptwXY_setValueAtX(), and G4INCL::Math::sign().

Referenced by MCGIDI_reaction_fixDomains(), and ptwXY_mutualifyDomains().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ptwXPoints* ptwXY_getXArray ( ptwXYPoints *  ptwXY,
nfu_status *  status 
)

Definition at line 24 of file ptwXY_convenient.cc.

References n, ptwX_new(), and ptwXY_simpleCoalescePoints().

+ Here is the call graph for this function:

ptwXYPoints* ptwXY_intersectionWith_ptwX ( ptwXYPoints *  ptwXY,
ptwXPoints *  ptwX,
nfu_status *  status 
)

Definition at line 194 of file ptwXY_convenient.cc.

References n, ptwX_length(), ptwXY_clone(), ptwXY_free(), ptwXY_getValueAtX(), ptwXY_setValueAtX(), ptwXY_simpleCoalescePoints(), and x.

Referenced by ptwXY_groupOneFunction(), ptwXY_groupThreeFunctions(), and ptwXY_groupTwoFunctions().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

nfu_status ptwXY_mergeClosePoints ( ptwXYPoints *  ptwXY,
double  epsilon 
)

Definition at line 141 of file ptwXY_convenient.cc.

References DBL_EPSILON, n, ptwXY_simpleCoalescePoints(), and x.

Referenced by ptwXY_union().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

nfu_status ptwXY_mutualifyDomains ( ptwXYPoints *  ptwXY1,
double  lowerEps1,
double  upperEps1,
int  positiveXOnly1,
ptwXYPoints *  ptwXY2,
double  lowerEps2,
double  upperEps2,
int  positiveXOnly2 
)

Definition at line 368 of file ptwXY_convenient.cc.

References ptwXY_areDomainsMutual(), ptwXY_dullEdges(), and ptwXY_getPointAtIndex_Unsafely().

+ Here is the call graph for this function:

nfu_status ptwXY_tweakDomainsToMutualify ( ptwXYPoints *  ptwXY1,
ptwXYPoints *  ptwXY2,
int  epsilonFactor,
double  epsilon 
)

Definition at line 295 of file ptwXY_convenient.cc.

References DBL_EPSILON, and ptwXY_getPointAtIndex_Unsafely().

Referenced by ptwXY_groupThreeFunctions(), and ptwXY_groupTwoFunctions().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

nfu_status ptwXY_valueTo_ptwXAndY ( ptwXYPoints *  ptwXY,
double **  xs,
double **  ys 
)

Definition at line 450 of file ptwXY_convenient.cc.

References free, ptwXY_length(), and ptwXY_simpleCoalescePoints().

+ Here is the call graph for this function:

ptwXYPoints* ptwXY_valueTo_ptwXY ( double  x1,
double  x2,
double  y,
nfu_status *  status 
)

Definition at line 477 of file ptwXY_convenient.cc.

References n, ptwXY_new(), and ptwXY_setValueAtX().

+ Here is the call graph for this function: