Geant4  10.02
MCGIDI_energy.cc File Reference
#include <string.h>
#include <cmath>
#include "MCGIDI_fromTOM.h"
#include "MCGIDI_misc.h"
#include "MCGIDI_private.h"
#include <nf_specialFunctions.h>
+ Include dependency graph for MCGIDI_energy.cc:

Go to the source code of this file.

Functions

static int MCGIDI_energy_parseWeightFromTOM (statusMessageReporting *smr, xDataTOM_element *element, MCGIDI_energyWeightedFunctional *weightedFunctional)
 
static int MCGIDI_energy_parseWeightedFunctionalsFromTOM (statusMessageReporting *smr, xDataTOM_element *element, MCGIDI_energy *energy)
 
static int MCGIDI_energy_parseGeneralEvaporationFromTOM (statusMessageReporting *smr, xDataTOM_element *element, MCGIDI_energy *energy)
 
static int MCGIDI_energy_parseEvaporationFromTOM (statusMessageReporting *smr, xDataTOM_element *element, MCGIDI_energy *energy)
 
static int MCGIDI_energy_parseWattFromTOM (statusMessageReporting *smr, xDataTOM_element *element, MCGIDI_energy *energy)
 
static int MCGIDI_energy_parseSimpleMaxwellianFissionFromTOM (statusMessageReporting *smr, xDataTOM_element *element, MCGIDI_energy *energy)
 
static int MCGIDI_energy_parseMadlandNixFromTOM (statusMessageReporting *smr, xDataTOM_element *functional, MCGIDI_energy *energy)
 
static nfu_status MCGIDI_energy_parseMadlandNixFromTOM_callback (double x, double *y, void *argList)
 
static double MCGIDI_energy_parseMadlandNixFromTOM_callback_g (double Ep, double EFL, double T_M, nfu_status *status)
 
static int MCGIDI_energy_parseNBodyPhaseSpaceFromTOM (statusMessageReporting *smr, xDataTOM_element *functional, MCGIDI_energy *energy, MCGIDI_distribution *distribution)
 
static int MCGIDI_energy_sampleSimpleMaxwellianFission (statusMessageReporting *smr, double e_in_U_theta, MCGIDI_decaySamplingInfo *decaySamplingInfo)
 
static int MCGIDI_energy_sampleEvaporation (statusMessageReporting *smr, double e_in_U_theta, MCGIDI_decaySamplingInfo *decaySamplingInfo)
 
static int MCGIDI_energy_sampleWatt (statusMessageReporting *smr, double e_in_U, double Watt_a, double Watt_b, MCGIDI_decaySamplingInfo *decaySamplingInfo)
 
static int MCGIDI_energy_sampleWeightedFunctional (statusMessageReporting *smr, MCGIDI_energy *energy, MCGIDI_quantitiesLookupModes &modes, MCGIDI_decaySamplingInfo *decaySamplingInfo)
 
static nfu_status MCGIDI_energy_NBodyPhaseSpacePDF_callback (double x, double *y, void *argList)
 
MCGIDI_energy * MCGIDI_energy_new (statusMessageReporting *smr)
 
int MCGIDI_energy_initialize (statusMessageReporting *, MCGIDI_energy *energy)
 
MCGIDI_energy * MCGIDI_energy_free (statusMessageReporting *smr, MCGIDI_energy *energy)
 
int MCGIDI_energy_release (statusMessageReporting *smr, MCGIDI_energy *energy)
 
int MCGIDI_energy_parseFromTOM (statusMessageReporting *smr, xDataTOM_element *element, MCGIDI_distribution *distribution, ptwXYPoints *norms, enum MCGIDI_energyType energyType, double gammaEnergy_MeV)
 
int MCGIDI_energy_sampleEnergy (statusMessageReporting *smr, MCGIDI_energy *energy, MCGIDI_quantitiesLookupModes &modes, MCGIDI_decaySamplingInfo *decaySamplingInfo)
 

Function Documentation

MCGIDI_energy* MCGIDI_energy_free ( statusMessageReporting *  smr,
MCGIDI_energy *  energy 
)

Definition at line 67 of file MCGIDI_energy.cc.

References MCGIDI_energy_release(), and smr_freeMemory().

Referenced by MCGIDI_distribution_release(), MCGIDI_energy_new(), MCGIDI_energy_parseFromTOM(), MCGIDI_energy_parseWeightFromTOM(), and MCGIDI_energy_release().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int MCGIDI_energy_initialize ( statusMessageReporting *  ,
MCGIDI_energy *  energy 
)

Definition at line 59 of file MCGIDI_energy.cc.

Referenced by MCGIDI_energy_new(), and MCGIDI_energy_release().

+ Here is the caller graph for this function:

static nfu_status MCGIDI_energy_NBodyPhaseSpacePDF_callback ( double  x,
double *  y,
void *  argList 
)
static

Definition at line 488 of file MCGIDI_energy.cc.

References G4Pow::GetInstance(), and G4Pow::powA().

Referenced by MCGIDI_energy_parseNBodyPhaseSpaceFromTOM().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

MCGIDI_energy* MCGIDI_energy_new ( statusMessageReporting *  smr)

Definition at line 48 of file MCGIDI_energy.cc.

References G4INCL::KinematicsUtils::energy(), MCGIDI_energy_free(), and MCGIDI_energy_initialize().

Referenced by MCGIDI_energy_parseFromTOM(), and MCGIDI_energy_parseWeightFromTOM().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static int MCGIDI_energy_parseEvaporationFromTOM ( statusMessageReporting *  smr,
xDataTOM_element *  element,
MCGIDI_energy *  energy 
)
static

Definition at line 264 of file MCGIDI_energy.cc.

References MCGIDI_misc_dataFromElement2ptwXYPointsInUnitsOf(), MCGIDI_misc_PQUStringToDoubleInUnitOf(), xDataTOM_getAttributesValueInElement(), and xDataTOME_getOneElementByName().

Referenced by MCGIDI_energy_parseFromTOM(), and MCGIDI_energy_parseWeightFromTOM().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int MCGIDI_energy_parseFromTOM ( statusMessageReporting *  smr,
xDataTOM_element *  element,
MCGIDI_distribution *  distribution,
ptwXYPoints *  norms,
enum MCGIDI_energyType  energyType,
double  gammaEnergy_MeV 
)
static int MCGIDI_energy_parseGeneralEvaporationFromTOM ( statusMessageReporting *  smr,
xDataTOM_element *  element,
MCGIDI_energy *  energy 
)
static

Definition at line 212 of file MCGIDI_energy.cc.

References g, MCGIDI_fromTOM_pdfOfX(), MCGIDI_misc_dataFromElement2ptwXYPointsInUnitsOf(), ptwXY_free(), ptwXY_getInterpolation(), and xDataTOME_getOneElementByName().

Referenced by MCGIDI_energy_parseFromTOM().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static int MCGIDI_energy_parseMadlandNixFromTOM ( statusMessageReporting *  smr,
xDataTOM_element *  functional,
MCGIDI_energy *  energy 
)
static

Definition at line 312 of file MCGIDI_energy.cc.

References e1, e3, MCGIDI_energy_parseMadlandNixFromTOM_callback(), MCGIDI_misc_dataFromXYs2ptwXYPointsInUnitsOf(), MCGIDI_misc_PQUStringToDoubleInUnitOf(), n, nfu_statusMessage(), ptwX_free(), ptwX_getPointAtIndex_Unsafely(), ptwXY_createFromFunction(), ptwXY_free(), ptwXY_getPointAtIndex_Unsafely(), ptwXY_getXYPairAtIndex(), ptwXY_length(), ptwXY_normalize(), ptwXY_runningIntegral(), ptwXY_simpleCoalescePoints(), xDataTOM_getAttributesValueInElement(), xDataTOME_getOneElementByName(), and xDataTOME_getXDataIfID().

Referenced by MCGIDI_energy_parseFromTOM().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static nfu_status MCGIDI_energy_parseMadlandNixFromTOM_callback ( double  x,
double *  y,
void *  argList 
)
static

Definition at line 406 of file MCGIDI_energy.cc.

References MCGIDI_energy_parseMadlandNixFromTOM_callback_g().

Referenced by MCGIDI_energy_parseMadlandNixFromTOM().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static double MCGIDI_energy_parseMadlandNixFromTOM_callback_g ( double  Ep,
double  EFL,
double  T_M,
nfu_status *  status 
)
static

Definition at line 422 of file MCGIDI_energy.cc.

References nf_exponentialIntegral(), nf_incompleteGammaFunction(), and nf_incompleteGammaFunctionComplementary().

Referenced by MCGIDI_energy_parseMadlandNixFromTOM_callback().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static int MCGIDI_energy_parseNBodyPhaseSpaceFromTOM ( statusMessageReporting *  smr,
xDataTOM_element *  functional,
MCGIDI_energy *  energy,
MCGIDI_distribution *  distribution 
)
static

Definition at line 448 of file MCGIDI_energy.cc.

References MCGIDI_energy_NBodyPhaseSpacePDF_callback(), MCGIDI_fromTOM_pdfOfX(), MCGIDI_misc_PQUStringToDouble(), MCGIDI_outputChannel_getQ_MeV(), MCGIDI_product_getMass_MeV(), nfu_statusMessage(), ptwXY_createFromFunction(), ptwXY_free(), smr_isOk(), xDataTOM_getAttributesValueInElement(), and xDataTOME_convertAttributeToInteger().

Referenced by MCGIDI_energy_parseFromTOM().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static int MCGIDI_energy_parseSimpleMaxwellianFissionFromTOM ( statusMessageReporting *  smr,
xDataTOM_element *  element,
MCGIDI_energy *  energy 
)
static

Definition at line 243 of file MCGIDI_energy.cc.

References MCGIDI_misc_dataFromElement2ptwXYPointsInUnitsOf(), MCGIDI_misc_PQUStringToDoubleInUnitOf(), xDataTOM_getAttributesValueInElement(), and xDataTOME_getOneElementByName().

Referenced by MCGIDI_energy_parseFromTOM().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static int MCGIDI_energy_parseWattFromTOM ( statusMessageReporting *  smr,
xDataTOM_element *  element,
MCGIDI_energy *  energy 
)
static

Definition at line 285 of file MCGIDI_energy.cc.

References MCGIDI_misc_dataFromElement2ptwXYPointsInUnitsOf(), MCGIDI_misc_PQUStringToDoubleInUnitOf(), xDataTOM_getAttributesValueInElement(), and xDataTOME_getOneElementByName().

Referenced by MCGIDI_energy_parseFromTOM().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static int MCGIDI_energy_parseWeightedFunctionalsFromTOM ( statusMessageReporting *  smr,
xDataTOM_element *  element,
MCGIDI_energy *  energy 
)
static

Definition at line 163 of file MCGIDI_energy.cc.

References MCGIDI_energy_parseWeightFromTOM(), xDataTOME_getFirstElement(), and xDataTOME_getNextElement().

Referenced by MCGIDI_energy_parseFromTOM().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static int MCGIDI_energy_parseWeightFromTOM ( statusMessageReporting *  smr,
xDataTOM_element *  element,
MCGIDI_energyWeightedFunctional *  weightedFunctional 
)
static

Definition at line 182 of file MCGIDI_energy.cc.

References G4INCL::KinematicsUtils::energy(), MCGIDI_energy_free(), MCGIDI_energy_new(), MCGIDI_energy_parseEvaporationFromTOM(), MCGIDI_misc_dataFromElement2ptwXYPointsInUnitsOf(), ptwXY_free(), xDataTOME_getFirstElement(), and xDataTOME_getNextElement().

Referenced by MCGIDI_energy_parseWeightedFunctionalsFromTOM().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int MCGIDI_energy_release ( statusMessageReporting *  smr,
MCGIDI_energy *  energy 
)

Definition at line 76 of file MCGIDI_energy.cc.

References MCGIDI_energy_free(), MCGIDI_energy_initialize(), MCGIDI_sampling_pdfsOfX_release(), MCGIDI_sampling_pdfsOfXGivenW_release(), and ptwXY_free().

Referenced by MCGIDI_energy_free().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int MCGIDI_energy_sampleEnergy ( statusMessageReporting *  smr,
MCGIDI_energy *  energy,
MCGIDI_quantitiesLookupModes &  modes,
MCGIDI_decaySamplingInfo *  decaySamplingInfo 
)

Definition at line 499 of file MCGIDI_energy.cc.

References MCGIDI_energy_sampleEvaporation(), MCGIDI_energy_sampleSimpleMaxwellianFission(), MCGIDI_energy_sampleWatt(), MCGIDI_energy_sampleWeightedFunctional(), MCGIDI_sampling_ptwXY_getValueAtX(), MCGIDI_sampling_sampleX_from_pdfOfX(), MCGIDI_sampling_sampleX_from_pdfsOfXGivenW(), and smr_isOk().

Referenced by MCGIDI_energy_sampleWeightedFunctional(), and MCGIDI_uncorrelated_sampleDistribution().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static int MCGIDI_energy_sampleEvaporation ( statusMessageReporting *  smr,
double  e_in_U_theta,
MCGIDI_decaySamplingInfo *  decaySamplingInfo 
)
static

Definition at line 589 of file MCGIDI_energy.cc.

References a, G4Exp(), and x.

Referenced by MCGIDI_energy_sampleEnergy().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static int MCGIDI_energy_sampleSimpleMaxwellianFission ( statusMessageReporting *  smr,
double  e_in_U_theta,
MCGIDI_decaySamplingInfo *  decaySamplingInfo 
)
static

Definition at line 563 of file MCGIDI_energy.cc.

References a, G4Exp(), and x.

Referenced by MCGIDI_energy_sampleEnergy().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static int MCGIDI_energy_sampleWatt ( statusMessageReporting *  smr,
double  e_in_U,
double  Watt_a,
double  Watt_b,
MCGIDI_decaySamplingInfo *  decaySamplingInfo 
)
static

Definition at line 613 of file MCGIDI_energy.cc.

References G4cout, G4endl, G4Log(), x, and z.

Referenced by MCGIDI_energy_sampleEnergy().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static int MCGIDI_energy_sampleWeightedFunctional ( statusMessageReporting *  smr,
MCGIDI_energy *  energy,
MCGIDI_quantitiesLookupModes &  modes,
MCGIDI_decaySamplingInfo *  decaySamplingInfo 
)
static

Definition at line 643 of file MCGIDI_energy.cc.

References MCGIDI_energy_sampleEnergy(), and MCGIDI_sampling_ptwXY_getValueAtX().

Referenced by MCGIDI_energy_sampleEnergy().

+ Here is the call graph for this function:

+ Here is the caller graph for this function: