Geant4 11.2.2
Toolkit for the simulation of the passage of particles through matter
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
MCGIDI.h
Go to the documentation of this file.
1/*
2# <<BEGIN-copyright>>
3# <<END-copyright>>
4*/
5#ifndef MCGIDI_h_included
6#define MCGIDI_h_included
7
8#define MCGIDI_VERSION_MAJOR 1
9#define MCGIDI_VERSION_MINOR 0
10#define MCGIDI_VERSION_PATCHLEVEL 0
11
12#include <GIDI_settings.hh>
13#include <map>
14#include <vector>
15
17#include <ptwXY.h>
18#include <xDataTOM.h>
19
20#include "MCGIDI_mass.h"
21#include "MCGIDI_map.h"
22
23/* Disable Effective C++ warnings in GIDI code. */
24#if __INTEL_COMPILER > 1399
25#pragma warning( disable:2021 )
26#pragma warning( disable:593 )
27#pragma warning( disable:111 )
28#elif __INTEL_COMPILER > 1199
29#pragma warning( disable:2304 )
30#endif
31
32#if defined __cplusplus
33 extern "C" {
34 namespace GIDI {
35#endif
36
38typedef struct MCGIDI_POP_s MCGIDI_POP;
43typedef struct MCGIDI_target_heated_sorted_s MCGIDI_target_heated_sorted;
61
67
68#if defined __cplusplus
69 }
70 }
71#endif
72
74 MCGIDI_quantityLookupMode_pointwise /**< Pointwise data are used to determine a quantity's value an energy E. */,
75 MCGIDI_quantityLookupMode_grouped /**< Grouped data are used to determine a quantity's value an energy E. */
76};
77
79
80 private:
81 int mProjectilesPOPID;
82 double mProjectileEnergy;
83 int mGroupIndex;
84 double mProjectileEnergyForGroupIndex;
85 double mTemperature;
86 enum MCGIDI_quantityLookupMode mCrossSectionMode;
87 enum MCGIDI_quantityLookupMode mMultiplicityMode;
88
89 public:
90 MCGIDI_quantitiesLookupModes( int projectilesPOPID );
92
93 inline double getProjectileEnergy( void ) const { return( mProjectileEnergy ); }
94 void setProjectileEnergy( double e_in ) { mProjectileEnergy = e_in; }
95
96 inline int getGroupIndex( void ) const { return( mGroupIndex ); }
97 int setGroupIndex( GIDI_settings const &settings, bool encloseOutOfRange );
98
99 inline double getTemperature( void ) const { return( mTemperature ); }
100 void setTemperature( double temperature ) { mTemperature = temperature; }
101
102 enum MCGIDI_quantityLookupMode getMode( std::string const &quantity ) const;
103 enum MCGIDI_quantityLookupMode getCrossSectionMode( void ) const { return( mCrossSectionMode ); };
104 std::vector<std::string> getListOfLookupQuanities( ) const;
105 void setMode( std::string const &quantity, enum MCGIDI_quantityLookupMode mode );
106 void setCrossSectionMode( enum MCGIDI_quantityLookupMode mode ) { mCrossSectionMode = mode; };
107 void setModeAll( enum MCGIDI_quantityLookupMode mode );
108};
109
111
116
118
119 public:
122};
123
125
126 private: // This is user input.
127 enum GIDI::xDataTOM_frame mWantFrame;
128 bool mWantVelocities;
129 double (*mRng)( void * );
130 void *mRngState;
131 std::vector<struct MCGIDI_samplingMultiplicityBias_s> mSamplingMultiplicityBiases;
132
133 public: // Temporary variables used in MCGIDI sampling routines.
134 enum GIDI::xDataTOM_frame mGotFrame;
135 GIDI::MCGIDI_POP *mPoP;
136 double mMu;
137 double mEp;
138
139 public:
140 MCGIDI_samplingSettings( enum GIDI::xDataTOM_frame frame, bool wantVelocities, double (*rng)( void * ), void *rngState );
142
143 inline double getProductMultiplicityBias( int PoPID ) const {
144 for( int i1 = 0; i1 < (int) mSamplingMultiplicityBiases.size( ); ++i1 ) {
145 if( PoPID == mSamplingMultiplicityBiases[i1].PoPID ) return( mSamplingMultiplicityBiases[i1].multiplicityFactor );
146 }
147 return( 1. ); }
148 int setProductMultiplicityBias( GIDI::statusMessageReporting *smr, int PoPID, double fractor );
149};
150
151#if defined __cplusplus
152 extern "C" {
153 namespace GIDI {
154#endif
155
156enum MCGIDI_transportability { /**< This enum is used to give the transportability status for a particle in a reaction or target. */
157 MCGIDI_transportability_unknown, /**< Particle is not a product of this reaction or target. */
158 MCGIDI_transportability_none, /**< Particle is a product but has not distribution data. */
159 MCGIDI_transportability_partial, /**< Particle is a product and has some distribution data. */
160 MCGIDI_transportability_full }; /**< Particle is a product and all needed distribution data. */
161
162#if defined __cplusplus
163 }
164 }
165#endif
166
167typedef std::map<int, enum GIDI::MCGIDI_transportability> transportabilitiesMap;
168
169#if defined __cplusplus
170 extern "C" {
171 namespace GIDI {
172#endif
173
174#define MCGIDI_crossSectionType_grouped 1
175#define MCGIDI_crossSectionType_pointwise 2
176
177#define MCGIDI_nullReaction -10001
178
179#define MCGIDI_speedOfLight_cm_sec 2.99792458e10
180#define MCGIDI_AMU2MeV 931.494028
181
183 MCGIDI_reactionType_unknown_e, /* This should never happen. */
184 MCGIDI_reactionType_null_e, /* Only occurs when sampling with from grouped cross sections and the projectile is below threshold. */
185 MCGIDI_reactionType_elastic_e, /* A nuclear elastic reaction. */
186 MCGIDI_reactionType_scattering_e, /* A nuclear reaction where the projectile and target are products as well as gammas,
187 excluding reactions that are MCGIDI_reactionType_elastic_e and
188 MCGIDI_reactionType_nuclearLevelTransition_e. */
189 MCGIDI_reactionType_nuclearIsomerTransmutation_e, /* A nuclear that changes N or Z and is not one of the others.*/
190 MCGIDI_reactionType_nuclearLevelTransition_e, /* Reaction in which the residual is the same isotope as the target but in a
191 different nuclear level. Mainly for meta-stables. */
192 MCGIDI_reactionType_capture_e, /* A nuclear capture reaction. */
193 MCGIDI_reactionType_fission_e, /* A nuclear fission reaction. */
197
200
203
207
209
213
216
217#define MCGIDI_particleLevel_continuum -1
218#define MCGIDI_particleLevel_sum -2
219
224
228 char *name;
229 int globalPoPsIndex; /* Index of particle in the PoPs library if particle can be return to packages using */
230 int Z, A, level, m; /* this library. Otherwise, -1. */
231 double mass_MeV;
232 double level_MeV;
235};
236
238 int numberOfPOPs, size, increment;
239 MCGIDI_POP *first, *last, **sorted;
240};
241
250
252 enum xDataTOM_frame frame; /* The frame the product data are in. */
253 int isVelocity; /* See struct MCGIDI_sampledProductsData_s for meaning. This is user input. */
254 double (*rng)( void * ); /* User supplied rng. */
255 void *rngState; /* User supplied rng state. */
256 MCGIDI_POP *pop; /* pop for the sampled product. */
257 double mu; /* mu = cos( theta ) for the sampled product. Frame is given by frame member. */
258 double Ep; /* Energy of the product. Frame is given by frame member. */
259};
260
267
273
275 int isVelocity; /* If true, px_vx, py_vy and pz_vz are velocities otherwise momenta. */
278 double px_vx;
279 double py_vy;
280 double pz_vz;
283 double birthTimeSec; /* Some products, like delayed fission neutrons, are to appear (be born) later. */
284};
285
292
295 double *Xs;
296 double *pdf;
297 double *cdf;
298};
299
306
313
319 double projectileMass_MeV, targetMass_MeV, productMass_MeV, residualMass_MeV;
320};
321
326
329 MCGIDI_energyWeightedFunctional weightedFunctional[4]; /* ??????????? Hardwired for no good reason. Will handle up to a (z,4n) reaction. */
330};
331
334 double mass, massFactor, e_inCOMFactor, Q_MeV;
335};
336
351
355 MCGIDI_pdfsOfXGivenW *pdfOfMuGivenEAndEp; /* The number of MCGIDI_pdfsOfXGivenW allocated is given by pdfOfEpGivenE.numberOfWs. */
356};
357
361 MCGIDI_pdfsOfXGivenW *pdfOfEpGivenEAndMu; /* The number of MCGIDI_pdfsOfXGivenW allocated is given by pdfOfMuGivenE.numberOfWs. */
362};
363
365 double *rs;
366 double *as;
367};
368
371 double energyToMeVFactor, massFactor, Sa, Sb, Ma, mb; /* Needed if a(E,E') is caluclated from the formula. */
372 MCGIDI_pdfsOfXGivenW dists; /* Sa currently not used. */
374};
375
385
388 MCGIDI_reaction *reaction; /* This is only used for output channels. */
389 MCGIDI_product *parent; /* This is only used for decay channels. */
391 double Q;
394};
395
410
413 int ENDF_MT, ENDL_C, ENDL_S;
415 char const *outputChannelStr;
416 xDataTOM_attributionList attributes; /* Do not free, owned by attributes. */
417 int domainValuesPresent; /* True if cross section data defined so EMin and EMax are value. */
418 int thresholdGroupIndex; /* For grouped data, the group index where threshold starts. */
419 double thresholdGroupDomain; /* This is groupEnergy[thresholdGroupIndex+1] - EMin. */
420 double thresholdGroupedDeltaCrossSection; /* The adjusted group cross section in group thresholdGroupIndex. */
421 double EMin, EMax, finalQ; /* BRB, EMin is used as threshold. However, some reactions, especially charged particle */
422 ptwXYPoints *crossSection; /* have effective thresholds much higher than EMin, may need to handle these differently??????? */
425 MCGIDI_productsInfo productsInfo; /* See MCGIDI_reaction_ParseDetermineReactionProducts for description. */
427};
428
447
451 char *path; /* Full path of input file. */
452 char *contents;
454};
455
457 char *path; /* Full path of input file. */
458 char *absPath; /* Full absolute path of input file. */
462 int nHeatedTargets, nReadHeatedTargets;
463 MCGIDI_target_heated *baseHeatedTarget; /* The lowest temperature whose contents is "all" data, (e.g, not just "crossSection"). */
464 MCGIDI_target_heated_info *heatedTargets; /* List of heated targets in order by temperature. */
465 MCGIDI_target_heated_info **readHeatedTargets; /* List of "read in" heated targets in order by temperature. */
466};
467
468char const *MCGIDI_version( void );
469int MCGIDI_versionMajor( void );
470int MCGIDI_versionMinor( void );
471int MCGIDI_versionPatchLevel( void );
472
473/*
474* Routines in MCGIDI_target.c
475*/
478MCGIDI_target *MCGIDI_target_newRead( statusMessageReporting *smr, const char *fileName );
479int MCGIDI_target_readFromMapViaPoPIDs( statusMessageReporting *smr, MCGIDI_target *target, MCGIDI_map *map, const char *evaluation,
480 int projectile_PoPID, int target_PoPID );
481int MCGIDI_target_readFromMap( statusMessageReporting *smr, MCGIDI_target *target, MCGIDI_map *map, const char *evaluation, const char *projectileName,
482 const char *targetName );
484 int projectile_PoPID, int target_PoPID );
485MCGIDI_target *MCGIDI_target_newReadFromMap( statusMessageReporting *smr, MCGIDI_map *map, const char *evaluation, const char *projectileName,
486 const char *targetName );
489int MCGIDI_target_read( statusMessageReporting *smr, MCGIDI_target *target, const char *fileName );
490char const *MCGIDI_target_getAttributesValue( statusMessageReporting *smr, MCGIDI_target *target, char const *name );
491int MCGIDI_target_getTemperatures( statusMessageReporting *smr, MCGIDI_target *target, double *temperatures );
495
501
504
505int MCGIDI_target_getDomain( statusMessageReporting *smr, MCGIDI_target *target, double *EMin, double *EMax );
507 bool sampling );
509 bool sampling );
511 double (*userrng)( void * ), void *rngState );
517
518/*
519* Routines in MCGIDI_target_heated.c
520*/
526int MCGIDI_target_heated_read( statusMessageReporting *smr, MCGIDI_target_heated *target, const char *fileName );
531#if 0
532MCGIDI_reaction *MCGIDI_target_heated_getProductionReactionAtIndex( MCGIDI_target_heated *target, int index );
533#endif
540 bool sampling );
542 MCGIDI_quantitiesLookupModes &modes, bool sampling );
546int MCGIDI_target_heated_getReactionsDomain( statusMessageReporting *smr, MCGIDI_target_heated *target, int index, double *EMin, double *EMax );
549
552
553/*
554* Routines in MCGIDI_reaction.c
555*/
561 MCGIDI_POPs *pops, MCGIDI_reaction *reaction );
566int MCGIDI_reaction_getDomain( statusMessageReporting *smr, MCGIDI_reaction *reaction, double *EMin, double *EMax );
567int MCGIDI_reaction_fixDomains( statusMessageReporting *smr, MCGIDI_reaction *reaction, double EMin, double EMax, nfu_status *status );
573 GIDI_settings_particle const *projectileSettings, double temperature_MeV, ptwXPoints *totalGroupedCrossSection );
574
581
582/*
583* Routines in MCGIDI_pop.c
584*/
586int MCGIDI_POPs_initial( statusMessageReporting *smr, MCGIDI_POPs *pops, int size );
587void *MCGIDI_POPs_free( MCGIDI_POPs *pops );
589MCGIDI_POP *MCGIDI_POPs_addParticleIfNeeded( statusMessageReporting *smr, MCGIDI_POPs *pops, char const *name, double mass_MeV,
590 double level_MeV, MCGIDI_POP *parent, int globalParticle );
591int MCGIDI_POPs_findParticleIndex( MCGIDI_POPs *pops, char const *name );
592MCGIDI_POP *MCGIDI_POPs_findParticle( MCGIDI_POPs *pops, char const *name );
593void MCGIDI_POPs_writeSortedList( MCGIDI_POPs *pops, FILE *f );
595
596MCGIDI_POP *MCGIDI_POP_new( statusMessageReporting *smr, char const *name, double mass_MeV, double level_MeV, MCGIDI_POP *parent );
600
601/*
602* Routines in MCGIDI_particle.c
603*/
611
612/*
613* Routines in MCGIDI_outputChannel.c
614*/
620 MCGIDI_reaction *reaction, MCGIDI_product *parent );
623int MCGIDI_outputChannel_getDomain( statusMessageReporting *smr, MCGIDI_outputChannel *outputChannel, double *EMin, double *EMax );
627double MCGIDI_outputChannel_getQ_MeV( statusMessageReporting *smr, MCGIDI_outputChannel *outputChannel, double e_in );
628double MCGIDI_outputChannel_getFinalQ( statusMessageReporting *smr, MCGIDI_outputChannel *outputChannel, double e_in );
630 MCGIDI_decaySamplingInfo *decaySamplingInfo, MCGIDI_sampledProductsDatas *productDatas, double *masses );
631
632/*
633* Routines in MCGIDI_product.c
634*/
640 MCGIDI_POPs *pops, MCGIDI_product *product, int *delayedNeutronIndex );
641int MCGIDI_product_getDomain( statusMessageReporting *smr, MCGIDI_product *product, double *EMin, double *EMax );
642int MCGIDI_product_setTwoBodyMasses( statusMessageReporting *smr, MCGIDI_product *product, double projectileMass_MeV, double targetMass_MeV,
643 double productMass_MeV, double residualMass_MeV );
648int MCGIDI_product_sampleMultiplicity( statusMessageReporting *smr, MCGIDI_product *product, double e_in, double r );
650 MCGIDI_decaySamplingInfo *decaySamplingInfo );
651
652int MCGIDI_sampledProducts_initialize( statusMessageReporting *smr, MCGIDI_sampledProductsDatas *sampledProductsDatas, int incrementSize );
656 MCGIDI_sampledProductsData *sampledProductsData );
659
660/*
661* Routines in MCGIDI_distribution.c
662*/
668
669/*
670* Routines in MCGIDI_angular.c
671*/
676int MCGIDI_angular_setTwoBodyMasses( statusMessageReporting *smr, MCGIDI_angular *angular, double projectileMass_MeV, double targetMass_MeV,
677 double productMass_MeV, double residualMass_MeV );
680 MCGIDI_decaySamplingInfo *decaySamplingInfo );
681
682/*
683* Routines in MCGIDI_energy.c
684*/
690 enum MCGIDI_energyType energyType, double gammaEnergy_MeV );
692 MCGIDI_decaySamplingInfo *decaySamplingInfo );
693
694/*
695* Routines in MCGIDI_energyAngular.c
696*/
703 MCGIDI_decaySamplingInfo *decaySamplingInfo );
704
705/*
706* Routines in MCGIDI_angularEnergy.c
707*/
714 MCGIDI_decaySamplingInfo *decaySamplingInfo );
715
716/*
717* Routines in MCGIDI_KalbachMann.c
718*/
725 MCGIDI_decaySamplingInfo *decaySamplingInfo );
726
727/*
728* Routines in MCGIDI_uncorrelated.c
729*/
731 enum MCGIDI_energyType energyType, double gammaEnergy_MeV );
733 MCGIDI_decaySamplingInfo *decaySamplingInfo );
734
735/*
736* Routines in MCGIDI_LLNLAngular_angularEnergy.c
737*/
739
740/*
741* Routines in MCGIDI_kinetics.c
742*/
743int MCGIDI_kinetics_2BodyReaction( statusMessageReporting *smr, MCGIDI_angular *angular, double K, double mu, double phi,
744 MCGIDI_sampledProductsData *outgoingData );
745int MCGIDI_kinetics_COMKineticEnergy2LabEnergyAndMomentum( statusMessageReporting *smr, double beta, double e_kinetic_com, double mu, double phi,
746 double m3cc, double m4cc, MCGIDI_sampledProductsData *outgoingData );
747int MCGIDI_kinetics_COM2Lab( statusMessageReporting *smr, MCGIDI_quantitiesLookupModes &modes, MCGIDI_decaySamplingInfo *decaySamplingInfo, double masses[3] );
748
749/*
750* Routines in MCGIDI_sampling.c
751*/
758 MCGIDI_quantitiesLookupModes &modes, MCGIDI_decaySamplingInfo *decaySamplingInfo );
759int MCGIDI_sampling_interpolationValues( statusMessageReporting *smr, ptwXY_interpolation interpolation, double *ws, double y1, double y2, double *y );
760double MCGIDI_sampling_ptwXY_getValueAtX( ptwXYPoints *ptwXY, double x1 );
761
762/*
763* Routines in MCGIDI_misc.c
764*/
766const char *MCGIDI_misc_ZToSymbol( int iZ );
767int MCGIDI_misc_symbolToZ( const char *Z );
768int MCGIDI_miscNameToZAm( statusMessageReporting *smr, const char *name, int *Z, int *A, int *m, int *level );
769xDataTOM_Int MCGIDI_misc_binarySearch( xDataTOM_Int n, double *ds, double d );
770int MCGIDI_misc_PQUStringToDouble( statusMessageReporting *smr, char const *str, char const *unit, double conversion, double *value );
771int MCGIDI_misc_PQUStringToDoubleInUnitOf( statusMessageReporting *smr, char const *str, char const *toUnit, double *value );
772void MCGIDI_misc_updateTransportabilitiesMap( transportabilitiesMap *transportabilities, int PoPID, enum MCGIDI_transportability transportability );
773void MCGIDI_misc_updateTransportabilitiesMap2( transportabilitiesMap *transportabilities, int PoPID, int transportable );
774
775#if defined __cplusplus
776 }
777 }
778#endif
779
780#endif /* End of MCGIDI_h_included. */
G4double S(G4double temp)
const G4double A[17]
MCGIDI_energyAngular * MCGIDI_energyAngular_free(statusMessageReporting *smr, MCGIDI_energyAngular *energyAngular)
MCGIDI_reaction * MCGIDI_target_heated_getReactionAtIndex(MCGIDI_target_heated *target, int index)
MCGIDI_angularEnergy * MCGIDI_angularEnergy_free(statusMessageReporting *smr, MCGIDI_angularEnergy *energyAngular)
int MCGIDI_KalbachMann_release(statusMessageReporting *smr, MCGIDI_KalbachMann *KalbachMann)
int MCGIDI_reaction_initialize(statusMessageReporting *smr, MCGIDI_reaction *reaction)
const char * MCGIDI_productGenre_unknown
int MCGIDI_target_heated_getEnergyGrid(statusMessageReporting *smr, MCGIDI_target_heated *target, double **energyGrid)
int MCGIDI_target_heated_numberOfReactions(statusMessageReporting *smr, MCGIDI_target_heated *target)
MCGIDI_angular * MCGIDI_angular_new(statusMessageReporting *smr)
int MCGIDI_target_heated_initialize(statusMessageReporting *smr, MCGIDI_target_heated *target)
MCGIDI_target_heated * MCGIDI_outputChannel_getTargetHeated(statusMessageReporting *smr, MCGIDI_outputChannel *outputChannel)
enum MCGIDI_reactionType MCGIDI_target_getReactionTypeAtIndex(statusMessageReporting *smr, MCGIDI_target *target, int index)
int MCGIDI_distribution_initialize(statusMessageReporting *smr, MCGIDI_distribution *distribution)
double MCGIDI_sampling_ptwXY_getValueAtX(ptwXYPoints *ptwXY, double x1)
MCGIDI_reaction * MCGIDI_target_heated_getReactionAtIndex_smr(statusMessageReporting *smr, MCGIDI_target_heated *target, int index)
MCGIDI_POP * MCGIDI_POPs_addParticleIfNeeded(statusMessageReporting *smr, MCGIDI_POPs *pops, char const *name, double mass_MeV, double level_MeV, MCGIDI_POP *parent, int globalParticle)
Definition MCGIDI_pop.cc:67
int MCGIDI_LLNLAngular_angularEnergy_parseFromTOM(statusMessageReporting *smr, xDataTOM_element *element, MCGIDI_distribution *distribution)
double MCGIDI_target_heated_getIndexReactionFinalQ(statusMessageReporting *smr, MCGIDI_target_heated *target, int index, MCGIDI_quantitiesLookupModes &modes)
int MCGIDI_sampling_pdfsOfXGivenW_release(statusMessageReporting *smr, MCGIDI_pdfsOfXGivenW *dists)
int MCGIDI_productsInfo_getIntegerMultiplicityAtIndex(MCGIDI_productsInfo *productsInfo, int index)
std::map< int, enum GIDI::MCGIDI_transportability > transportabilitiesMap
Definition MCGIDI.h:167
MCGIDI_energy * MCGIDI_energy_free(statusMessageReporting *smr, MCGIDI_energy *energy)
int MCGIDI_miscNameToZAm(statusMessageReporting *smr, const char *name, int *Z, int *A, int *m, int *level)
int MCGIDI_angular_setTwoBodyMasses(statusMessageReporting *smr, MCGIDI_angular *angular, double projectileMass_MeV, double targetMass_MeV, double productMass_MeV, double residualMass_MeV)
MCGIDI_POP * MCGIDI_target_heated_getPOPForProjectile(statusMessageReporting *smr, MCGIDI_target_heated *target)
int MCGIDI_target_readHeatedTarget(statusMessageReporting *smr, MCGIDI_target *target, int index)
int MCGIDI_outputChannel_getDomain(statusMessageReporting *smr, MCGIDI_outputChannel *outputChannel, double *EMin, double *EMax)
int MCGIDI_target_heated_getReactionsDomain(statusMessageReporting *smr, MCGIDI_target_heated *target, int index, double *EMin, double *EMax)
int MCGIDI_angular_release(statusMessageReporting *smr, MCGIDI_angular *angular)
MCGIDI_POP * MCGIDI_POPs_findParticle(MCGIDI_POPs *pops, char const *name)
MCGIDI_reactionType
Definition MCGIDI.h:182
@ MCGIDI_reactionType_nuclearIsomerTransmutation_e
Definition MCGIDI.h:189
@ MCGIDI_reactionType_unknown_e
Definition MCGIDI.h:183
@ MCGIDI_reactionType_elastic_e
Definition MCGIDI.h:185
@ MCGIDI_reactionType_nuclearLevelTransition_e
Definition MCGIDI.h:190
@ MCGIDI_reactionType_null_e
Definition MCGIDI.h:184
@ MCGIDI_reactionType_scattering_e
Definition MCGIDI.h:186
@ MCGIDI_reactionType_atomic_e
Definition MCGIDI.h:195
@ MCGIDI_reactionType_capture_e
Definition MCGIDI.h:192
@ MCGIDI_reactionType_sumOfRemainingOutputChannels_e
Definition MCGIDI.h:194
@ MCGIDI_reactionType_fission_e
Definition MCGIDI.h:193
double MCGIDI_target_getTotalCrossSectionAtTAndE(statusMessageReporting *smr, MCGIDI_target *target, MCGIDI_quantitiesLookupModes &modes, bool sampling)
int MCGIDI_sampling_pdfsOfXGivenW_initialize(statusMessageReporting *smr, MCGIDI_pdfsOfXGivenW *dists)
MCGIDI_outputChannel * MCGIDI_outputChannel_new(statusMessageReporting *smr)
int MCGIDI_energy_sampleEnergy(statusMessageReporting *smr, MCGIDI_energy *energy, MCGIDI_quantitiesLookupModes &modes, MCGIDI_decaySamplingInfo *decaySamplingInfo)
int MCGIDI_energy_initialize(statusMessageReporting *smr, MCGIDI_energy *energy)
int MCGIDI_reaction_getENDL_CSNumbers(MCGIDI_reaction *reaction, int *S)
MCGIDI_distribution * MCGIDI_distribution_free(statusMessageReporting *smr, MCGIDI_distribution *distribution)
enum MCGIDI_reactionType MCGIDI_reaction_getReactionType(statusMessageReporting *smr, MCGIDI_reaction *reaction)
int MCGIDI_uncorrelated_parseFromTOM(statusMessageReporting *smr, xDataTOM_element *element, MCGIDI_distribution *distribution, ptwXYPoints *norms, enum MCGIDI_energyType energyType, double gammaEnergy_MeV)
int MCGIDI_sampling_pdfsOfX_release(statusMessageReporting *smr, MCGIDI_pdfOfX *dist)
double MCGIDI_outputChannel_getQ_MeV(statusMessageReporting *smr, MCGIDI_outputChannel *outputChannel, double e_in)
MCGIDI_target * MCGIDI_target_new(statusMessageReporting *smr)
char const * MCGIDI_target_getAttributesValue(statusMessageReporting *smr, MCGIDI_target *target, char const *name)
MCGIDI_target_heated * MCGIDI_target_getHeatedTargetAtTIndex(statusMessageReporting *smr, MCGIDI_target *target, int index)
int MCGIDI_target_initialize(statusMessageReporting *smr, MCGIDI_target *target)
int MCGIDI_KalbachMann_sampleEp(statusMessageReporting *smr, MCGIDI_KalbachMann *KalbachMann, MCGIDI_quantitiesLookupModes &modes, MCGIDI_decaySamplingInfo *decaySamplingInfo)
MCGIDI_reaction * MCGIDI_target_getReactionAtIndex(MCGIDI_target *target, int index)
MCGIDI_POP * MCGIDI_target_heated_getPOPForTarget(statusMessageReporting *smr, MCGIDI_target_heated *target)
MCGIDI_distributionType
Definition MCGIDI.h:204
@ MCGIDI_distributionType_angularEnergy_e
Definition MCGIDI.h:206
@ MCGIDI_distributionType_energyAngular_e
Definition MCGIDI.h:205
@ MCGIDI_distributionType_KalbachMann_e
Definition MCGIDI.h:205
@ MCGIDI_distributionType_unknown_e
Definition MCGIDI.h:204
@ MCGIDI_distributionType_angular_e
Definition MCGIDI.h:204
@ MCGIDI_distributionType_uncorrelated_e
Definition MCGIDI.h:205
@ MCGIDI_distributionType_none_e
Definition MCGIDI.h:204
int MCGIDI_productsInfo_getPoPsIndexAtIndex(MCGIDI_productsInfo *productsInfo, int index)
int MCGIDI_angularEnergy_initialize(statusMessageReporting *smr, MCGIDI_angularEnergy *energyAngular)
MCGIDI_energy * MCGIDI_energy_new(statusMessageReporting *smr)
double MCGIDI_target_getIndexReactionCrossSectionAtE(statusMessageReporting *smr, MCGIDI_target *target, int index, MCGIDI_quantitiesLookupModes &modes, bool sampling)
MCGIDI_angular * MCGIDI_angular_free(statusMessageReporting *smr, MCGIDI_angular *angular)
MCGIDI_channelGenre
Definition MCGIDI.h:198
@ MCGIDI_channelGenre_uncorrelated_e
Definition MCGIDI.h:198
@ MCGIDI_channelGenre_twoBody_e
Definition MCGIDI.h:198
@ MCGIDI_channelGenre_twoBodyDecay_e
Definition MCGIDI.h:199
@ MCGIDI_channelGenre_undefined_e
Definition MCGIDI.h:198
@ MCGIDI_channelGenre_uncorrelatedDecay_e
Definition MCGIDI.h:199
@ MCGIDI_channelGenre_sumOfRemaining_e
Definition MCGIDI.h:199
int MCGIDI_target_readFromMap(statusMessageReporting *smr, MCGIDI_target *target, MCGIDI_map *map, const char *evaluation, const char *projectileName, const char *targetName)
MCGIDI_sampledProductsData * MCGIDI_sampledProducts_getProductAtIndex(MCGIDI_sampledProductsDatas *sampledProductsDatas, int index)
int MCGIDI_target_recast(statusMessageReporting *smr, MCGIDI_target *target, GIDI_settings &settings)
int MCGIDI_energy_parseFromTOM(statusMessageReporting *smr, xDataTOM_element *element, MCGIDI_distribution *distribution, ptwXYPoints *norms, enum MCGIDI_energyType energyType, double gammaEnergy_MeV)
int MCGIDI_sampledProducts_number(MCGIDI_sampledProductsDatas *sampledProductsDatas)
int MCGIDI_angular_parseFromTOM(statusMessageReporting *smr, xDataTOM_element *element, MCGIDI_distribution *distribution, ptwXYPoints *norms)
int MCGIDI_sampling_doubleDistribution(statusMessageReporting *smr, MCGIDI_pdfsOfXGivenW *pdfOfWGivenV, MCGIDI_pdfsOfXGivenW *pdfOfXGivenVAndW, MCGIDI_quantitiesLookupModes &modes, MCGIDI_decaySamplingInfo *decaySamplingInfo)
int MCGIDI_misc_PQUStringToDouble(statusMessageReporting *smr, char const *str, char const *unit, double conversion, double *value)
int MCGIDI_sampling_sampleX_from_pdfOfX(MCGIDI_pdfOfX *dist, MCGIDI_pdfsOfXGivenW_sampled *sampled, double r)
const char * MCGIDI_productGenre_NBody_angular_energy
Definition MCGIDI.h:215
double MCGIDI_outputChannel_getFinalQ(statusMessageReporting *smr, MCGIDI_outputChannel *outputChannel, double e_in)
int MCGIDI_distribution_parseFromTOM(statusMessageReporting *smr, xDataTOM_element *element, MCGIDI_product *product, MCGIDI_POPs *pops, ptwXYPoints *norms)
int MCGIDI_target_heated_recast(statusMessageReporting *smr, MCGIDI_target_heated *target, GIDI_settings &settings)
int MCGIDI_target_getDomain(statusMessageReporting *smr, MCGIDI_target *target, double *EMin, double *EMax)
int MCGIDI_product_sampleMu(statusMessageReporting *smr, MCGIDI_product *product, MCGIDI_quantitiesLookupModes &modes, MCGIDI_decaySamplingInfo *decaySamplingInfo)
MCGIDI_target_heated * MCGIDI_product_getTargetHeated(statusMessageReporting *smr, MCGIDI_product *product)
MCGIDI_productMultiplicityType
Definition MCGIDI.h:201
@ MCGIDI_productMultiplicityType_energyDependent_e
Definition MCGIDI.h:202
@ MCGIDI_productMultiplicityType_invalid_e
Definition MCGIDI.h:201
@ MCGIDI_productMultiplicityType_unknown_e
Definition MCGIDI.h:201
@ MCGIDI_productMultiplicityType_mixed_e
Definition MCGIDI.h:202
@ MCGIDI_productMultiplicityType_integer_e
Definition MCGIDI.h:201
@ MCGIDI_productMultiplicityType_gammaBranching_e
Definition MCGIDI.h:202
int MCGIDI_outputChannel_initialize(statusMessageReporting *smr, MCGIDI_outputChannel *outputChannel)
MCGIDI_particle * MCGIDI_particle_free(statusMessageReporting *smr, MCGIDI_particle *particle)
double MCGIDI_target_heated_getIndexReactionCrossSectionAtE(statusMessageReporting *smr, MCGIDI_target_heated *target, int index, MCGIDI_quantitiesLookupModes &modes, bool sampling)
double MCGIDI_product_getMass_MeV(statusMessageReporting *smr, MCGIDI_product *product)
const char * MCGIDI_productGenre_twoBody_formFactor
Definition MCGIDI.h:214
int MCGIDI_angularEnergy_parseFromTOM(statusMessageReporting *smr, xDataTOM_element *element, MCGIDI_distribution *distribution)
xDataTOM_Int MCGIDI_misc_binarySearch(xDataTOM_Int n, double *ds, double d)
MCGIDI_target * MCGIDI_target_free(statusMessageReporting *smr, MCGIDI_target *target)
int MCGIDI_productsInfo_getTransportableAtIndex(MCGIDI_productsInfo *productsInfo, int index)
MCGIDI_angularType
Definition MCGIDI.h:208
@ MCGIDI_angularType_isotropic
Definition MCGIDI.h:208
@ MCGIDI_angularType_recoil
Definition MCGIDI.h:208
@ MCGIDI_angularType_linear
Definition MCGIDI.h:208
MCGIDI_product * MCGIDI_product_free(statusMessageReporting *smr, MCGIDI_product *product)
int MCGIDI_reaction_recast(statusMessageReporting *smr, MCGIDI_reaction *reaction, GIDI_settings &settings, GIDI_settings_particle const *projectileSettings, double temperature_MeV, ptwXPoints *totalGroupedCrossSection)
int MCGIDI_target_getTemperatures(statusMessageReporting *smr, MCGIDI_target *target, double *temperatures)
int MCGIDI_kinetics_2BodyReaction(statusMessageReporting *smr, MCGIDI_angular *angular, double K, double mu, double phi, MCGIDI_sampledProductsData *outgoingData)
double MCGIDI_target_heated_getTotalCrossSectionAtE(statusMessageReporting *smr, MCGIDI_target_heated *target, MCGIDI_quantitiesLookupModes &modes, bool sampling)
MCGIDI_POP * MCGIDI_POP_new(statusMessageReporting *smr, char const *name, double mass_MeV, double level_MeV, MCGIDI_POP *parent)
MCGIDI_outputChannel * MCGIDI_outputChannel_free(statusMessageReporting *smr, MCGIDI_outputChannel *outputChannel)
int MCGIDI_energyAngular_parseFromTOM(statusMessageReporting *smr, xDataTOM_element *element, MCGIDI_distribution *distribution)
int MCGIDI_angular_sampleMu(statusMessageReporting *smr, MCGIDI_angular *angular, MCGIDI_quantitiesLookupModes &modes, MCGIDI_decaySamplingInfo *decaySamplingInfo)
int MCGIDI_KalbachMann_parseFromTOM(statusMessageReporting *smr, xDataTOM_element *element, MCGIDI_distribution *distribution)
int MCGIDI_target_numberOfReactions(statusMessageReporting *smr, MCGIDI_target *target)
int MCGIDI_target_numberOfProductionReactions(statusMessageReporting *smr, MCGIDI_target *target)
int MCGIDI_versionPatchLevel(void)
double MCGIDI_target_getIndexReactionFinalQ(statusMessageReporting *smr, MCGIDI_target *target, int index, MCGIDI_quantitiesLookupModes &modes)
void * MCGIDI_POPs_free(MCGIDI_POPs *pops)
Definition MCGIDI_pop.cc:41
MCGIDI_target * MCGIDI_target_newReadFromMap(statusMessageReporting *smr, MCGIDI_map *map, const char *evaluation, const char *projectileName, const char *targetName)
int MCGIDI_target_heated_sampleIndexReactionProductsAtE(statusMessageReporting *smr, MCGIDI_target_heated *target, int index, MCGIDI_quantitiesLookupModes &modes, MCGIDI_decaySamplingInfo *decaySamplingInfo, MCGIDI_sampledProductsDatas *productData)
const char * MCGIDI_productGenre_NBody_pairProduction
Definition MCGIDI.h:215
MCGIDI_KalbachMann * MCGIDI_KalbachMann_new(statusMessageReporting *smr, ptwXY_interpolation interpolationWY, ptwXY_interpolation interpolationXY)
MCGIDI_angularEnergy * MCGIDI_angularEnergy_new(statusMessageReporting *smr)
MCGIDI_target_heated * MCGIDI_target_getHeatedTargetAtIndex_ReadIfNeeded(statusMessageReporting *smr, MCGIDI_target *target, int index)
MCGIDI_distribution * MCGIDI_distribution_new(statusMessageReporting *smr)
int MCGIDI_particle_release(statusMessageReporting *smr, MCGIDI_particle *particle)
enum MCGIDI_productMultiplicityType MCGIDI_productsInfo_getMultiplicityTypeAtIndex(MCGIDI_productsInfo *productsInfo, int index)
int MCGIDI_product_getDomain(statusMessageReporting *smr, MCGIDI_product *product, double *EMin, double *EMax)
int MCGIDI_sampledProducts_initialize(statusMessageReporting *smr, MCGIDI_sampledProductsDatas *sampledProductsDatas, int incrementSize)
int MCGIDI_outputChannel_parseFromTOM(statusMessageReporting *smr, xDataTOM_element *element, MCGIDI_POPs *pops, MCGIDI_outputChannel *outputChannel, MCGIDI_reaction *reaction, MCGIDI_product *parent)
void MCGIDI_misc_updateTransportabilitiesMap2(transportabilitiesMap *transportabilities, int PoPID, int transportable)
int MCGIDI_energyAngular_release(statusMessageReporting *smr, MCGIDI_energyAngular *energyAngular)
int MCGIDI_kinetics_COM2Lab(statusMessageReporting *smr, MCGIDI_quantitiesLookupModes &modes, MCGIDI_decaySamplingInfo *decaySamplingInfo, double masses[3])
MCGIDI_target * MCGIDI_target_newReadFromMapViaPoPIDs(statusMessageReporting *smr, MCGIDI_map *map, const char *evaluation, int projectile_PoPID, int target_PoPID)
int MCGIDI_product_sampleMultiplicity(statusMessageReporting *smr, MCGIDI_product *product, double e_in, double r)
MCGIDI_target_heated * MCGIDI_reaction_getTargetHeated(statusMessageReporting *smr, MCGIDI_reaction *reaction)
int MCGIDI_POPs_findParticleIndex(MCGIDI_POPs *pops, char const *name)
MCGIDI_target_heated * MCGIDI_target_heated_free(statusMessageReporting *smr, MCGIDI_target_heated *target)
double MCGIDI_reaction_getTargetMass_MeV(statusMessageReporting *smr, MCGIDI_reaction *reaction)
int MCGIDI_sampledProducts_remalloc(statusMessageReporting *smr, MCGIDI_sampledProductsDatas *sampledProductsDatas)
MCGIDI_target * MCGIDI_target_newRead(statusMessageReporting *smr, const char *fileName)
MCGIDI_transportability
Definition MCGIDI.h:156
@ MCGIDI_transportability_unknown
Definition MCGIDI.h:157
@ MCGIDI_transportability_none
Definition MCGIDI.h:158
@ MCGIDI_transportability_partial
Definition MCGIDI.h:159
@ MCGIDI_transportability_full
Definition MCGIDI.h:160
void MCGIDI_misc_updateTransportabilitiesMap(transportabilitiesMap *transportabilities, int PoPID, enum MCGIDI_transportability transportability)
int MCGIDI_distribution_release(statusMessageReporting *smr, MCGIDI_distribution *distribution)
void MCGIDI_POPs_printSortedList(MCGIDI_POPs *pops)
int MCGIDI_product_initialize(statusMessageReporting *smr, MCGIDI_product *product)
int MCGIDI_target_heated_release(statusMessageReporting *smr, MCGIDI_target_heated *target)
transportabilitiesMap const * MCGIDI_target_getUniqueProducts(statusMessageReporting *smr, MCGIDI_target *target)
int MCGIDI_target_sampleReaction(statusMessageReporting *smr, MCGIDI_target *target, MCGIDI_quantitiesLookupModes &modes, double totalXSec, double(*userrng)(void *), void *rngState)
int MCGIDI_uncorrelated_sampleDistribution(statusMessageReporting *smr, MCGIDI_distribution *distribution, MCGIDI_quantitiesLookupModes &modes, MCGIDI_decaySamplingInfo *decaySamplingInfo)
const char * MCGIDI_productGenre_twoBody_angular
Definition MCGIDI.h:214
int MCGIDI_sampledProducts_release(statusMessageReporting *smr, MCGIDI_sampledProductsDatas *sampledProductsDatas)
double MCGIDI_target_heated_getReactionsThreshold(statusMessageReporting *smr, MCGIDI_target_heated *target, int index)
int MCGIDI_target_readFromMapViaPoPIDs(statusMessageReporting *smr, MCGIDI_target *target, MCGIDI_map *map, const char *evaluation, int projectile_PoPID, int target_PoPID)
MCGIDI_quantityLookupMode
Definition MCGIDI.h:73
@ MCGIDI_quantityLookupMode_pointwise
Definition MCGIDI.h:74
@ MCGIDI_quantityLookupMode_grouped
Definition MCGIDI.h:75
int MCGIDI_POPs_initial(statusMessageReporting *smr, MCGIDI_POPs *pops, int size)
Definition MCGIDI_pop.cc:30
MCGIDI_POP * MCGIDI_POP_free(MCGIDI_POP *pop)
int MCGIDI_angularEnergy_release(statusMessageReporting *smr, MCGIDI_angularEnergy *energyAngular)
int MCGIDI_sampling_sampleX_from_pdfsOfXGivenW(MCGIDI_pdfsOfXGivenW *dists, MCGIDI_pdfsOfXGivenW_sampled *sampled, double r)
int MCGIDI_energyAngular_initialize(statusMessageReporting *smr, MCGIDI_energyAngular *energyAngular)
int MCGIDI_sampling_interpolationValues(statusMessageReporting *smr, ptwXY_interpolation interpolation, double *ws, double y1, double y2, double *y)
int MCGIDI_target_sampleNullReactionProductsAtE(statusMessageReporting *smr, MCGIDI_target *target, MCGIDI_quantitiesLookupModes &modes, MCGIDI_decaySamplingInfo *decaySamplingInfo, MCGIDI_sampledProductsDatas *productDatas)
MCGIDI_POPs * MCGIDI_POPs_new(statusMessageReporting *smr, int size)
Definition MCGIDI_pop.cc:19
int MCGIDI_particle_printInternalSortedList(statusMessageReporting *smr)
int MCGIDI_reaction_fixDomains(statusMessageReporting *smr, MCGIDI_reaction *reaction, double EMin, double EMax, nfu_status *status)
struct MCGIDI_target_heated_sorted_s MCGIDI_target_heated_sorted
Definition MCGIDI.h:43
double MCGIDI_outputChannel_getTargetMass_MeV(statusMessageReporting *smr, MCGIDI_outputChannel *outputChannel)
int MCGIDI_misc_PQUStringToDoubleInUnitOf(statusMessageReporting *smr, char const *str, char const *toUnit, double *value)
double MCGIDI_target_heated_getTargetMass_MeV(statusMessageReporting *smr, MCGIDI_target_heated *target)
double MCGIDI_product_getTargetMass_MeV(statusMessageReporting *smr, MCGIDI_product *product)
int MCGIDI_sampledProducts_addProduct(statusMessageReporting *smr, MCGIDI_sampledProductsDatas *sampledProductsDatas, MCGIDI_sampledProductsData *sampledProductsData)
int MCGIDI_productsInfo_getNumberOfUniqueProducts(MCGIDI_productsInfo *productsInfo)
int MCGIDI_outputChannel_numberOfProducts(MCGIDI_outputChannel *outputChannel)
MCGIDI_productsInfo * MCGIDI_reaction_getProductsInfo(MCGIDI_reaction *reaction)
int MCGIDI_versionMajor(void)
int MCGIDI_angular_initialize(statusMessageReporting *smr, MCGIDI_angular *angular)
int MCGIDI_KalbachMann_initialize(statusMessageReporting *smr, MCGIDI_KalbachMann *KalbachMann, ptwXY_interpolation interpolationWY, ptwXY_interpolation interpolationXY)
int MCGIDI_reaction_getDomain(statusMessageReporting *smr, MCGIDI_reaction *reaction, double *EMin, double *EMax)
int MCGIDI_reaction_parseFromTOM(statusMessageReporting *smr, xDataTOM_element *element, MCGIDI_target_heated *target, MCGIDI_POPs *pops, MCGIDI_reaction *reaction)
void MCGIDI_POPs_writeSortedList(MCGIDI_POPs *pops, FILE *f)
const char * MCGIDI_misc_ZToSymbol(int iZ)
int MCGIDI_energyAngular_sampleDistribution(statusMessageReporting *smr, MCGIDI_distribution *distribution, MCGIDI_quantitiesLookupModes &modes, MCGIDI_decaySamplingInfo *decaySamplingInfo)
int MCGIDI_target_heated_numberOfProductionReactions(statusMessageReporting *smr, MCGIDI_target_heated *target)
MCGIDI_particle * MCGIDI_particle_getInternalID(statusMessageReporting *smr, const char *const name, MCGIDI_POPs *pops)
int MCGIDI_outputChannel_sampleProductsAtE(statusMessageReporting *smr, MCGIDI_outputChannel *outputChannel, MCGIDI_quantitiesLookupModes &modes, MCGIDI_decaySamplingInfo *decaySamplingInfo, MCGIDI_sampledProductsDatas *productDatas, double *masses)
int MCGIDI_reaction_getENDF_MTNumber(MCGIDI_reaction *reaction)
int MCGIDI_particle_initialize(statusMessageReporting *smr, MCGIDI_particle *particle)
int MCGIDI_product_parseFromTOM(statusMessageReporting *smr, xDataTOM_element *element, MCGIDI_outputChannel *outputChannel, MCGIDI_POPs *pops, MCGIDI_product *product, int *delayedNeutronIndex)
int MCGIDI_target_read(statusMessageReporting *smr, MCGIDI_target *target, const char *fileName)
MCGIDI_energyAngular * MCGIDI_energyAngular_new(statusMessageReporting *smr)
double MCGIDI_product_getProjectileMass_MeV(statusMessageReporting *smr, MCGIDI_product *product)
int MCGIDI_misc_symbolToZ(const char *Z)
int MCGIDI_target_release(statusMessageReporting *smr, MCGIDI_target *target)
double MCGIDI_reaction_getProjectileMass_MeV(statusMessageReporting *smr, MCGIDI_reaction *reaction)
int MCGIDI_outputChannel_release(statusMessageReporting *smr, MCGIDI_outputChannel *outputChannel)
MCGIDI_POP * MCGIDI_POP_release(MCGIDI_POP *pop)
transportabilitiesMap const * MCGIDI_target_heated_getUniqueProducts(statusMessageReporting *smr, MCGIDI_target_heated *target)
int MCGIDI_energy_release(statusMessageReporting *smr, MCGIDI_energy *energy)
int MCGIDI_target_sampleIndexReactionProductsAtE(statusMessageReporting *smr, MCGIDI_target *target, int index, MCGIDI_quantitiesLookupModes &modes, MCGIDI_decaySamplingInfo *decaySamplingInfo, MCGIDI_sampledProductsDatas *productData)
int MCGIDI_product_setTwoBodyMasses(statusMessageReporting *smr, MCGIDI_product *product, double projectileMass_MeV, double targetMass_MeV, double productMass_MeV, double residualMass_MeV)
double MCGIDI_reaction_getFinalQ(statusMessageReporting *smr, MCGIDI_reaction *reaction, MCGIDI_quantitiesLookupModes &modes)
int MCGIDI_POPs_release(MCGIDI_POPs *pops)
Definition MCGIDI_pop.cc:51
MCGIDI_energyType
Definition MCGIDI.h:210
@ MCGIDI_energyType_unknown
Definition MCGIDI.h:210
@ MCGIDI_energyType_NBodyPhaseSpace
Definition MCGIDI.h:212
@ MCGIDI_energyType_primaryGamma
Definition MCGIDI.h:210
@ MCGIDI_energyType_weightedFunctional
Definition MCGIDI.h:212
@ MCGIDI_energyType_simpleMaxwellianFission
Definition MCGIDI.h:211
@ MCGIDI_energyType_discreteGamma
Definition MCGIDI.h:210
@ MCGIDI_energyType_generalEvaporation
Definition MCGIDI.h:211
@ MCGIDI_energyType_MadlandNix
Definition MCGIDI.h:212
@ MCGIDI_energyType_evaporation
Definition MCGIDI.h:211
@ MCGIDI_energyType_Watt
Definition MCGIDI.h:212
@ MCGIDI_energyType_linear
Definition MCGIDI.h:211
double MCGIDI_POP_getMass_MeV(MCGIDI_POP *pop)
int MCGIDI_particle_freeInternalList(statusMessageReporting *smr)
int MCGIDI_kinetics_COMKineticEnergy2LabEnergyAndMomentum(statusMessageReporting *smr, double beta, double e_kinetic_com, double mu, double phi, double m3cc, double m4cc, MCGIDI_sampledProductsData *outgoingData)
double MCGIDI_reaction_getCrossSectionAtE(statusMessageReporting *smr, MCGIDI_reaction *reaction, MCGIDI_quantitiesLookupModes &modes, bool sampling)
int MCGIDI_versionMinor(void)
int MCGIDI_misc_NumberOfZSymbols(void)
int MCGIDI_angularEnergy_sampleDistribution(statusMessageReporting *smr, MCGIDI_angularEnergy *angularEnergy, MCGIDI_quantitiesLookupModes &modes, MCGIDI_decaySamplingInfo *decaySamplingInfo)
MCGIDI_target_heated * MCGIDI_target_heated_new(statusMessageReporting *smr)
MCGIDI_reaction * MCGIDI_target_getReactionAtIndex_smr(statusMessageReporting *smr, MCGIDI_target *target, int index)
int MCGIDI_product_release(statusMessageReporting *smr, MCGIDI_product *product)
double MCGIDI_target_heated_getProjectileMass_MeV(statusMessageReporting *smr, MCGIDI_target_heated *target)
MCGIDI_target_heated * MCGIDI_target_heated_newRead(statusMessageReporting *smr, const char *fileName)
MCGIDI_product * MCGIDI_outputChannel_getProductAtIndex(statusMessageReporting *smr, MCGIDI_outputChannel *outputChannel, int i)
MCGIDI_KalbachMann * MCGIDI_KalbachMann_free(statusMessageReporting *smr, MCGIDI_KalbachMann *KalbachMann)
MCGIDI_reaction * MCGIDI_reaction_free(statusMessageReporting *smr, MCGIDI_reaction *reaction)
MCGIDI_product * MCGIDI_product_new(statusMessageReporting *smr)
MCGIDI_particle * MCGIDI_particle_new(statusMessageReporting *smr)
MCGIDI_reaction * MCGIDI_reaction_new(statusMessageReporting *smr)
char const * MCGIDI_version(void)
double MCGIDI_outputChannel_getProjectileMass_MeV(statusMessageReporting *smr, MCGIDI_outputChannel *outputChannel)
int MCGIDI_reaction_release(statusMessageReporting *smr, MCGIDI_reaction *reaction)
int MCGIDI_target_heated_read(statusMessageReporting *smr, MCGIDI_target_heated *target, const char *fileName)
void setCrossSectionMode(enum MCGIDI_quantityLookupMode mode)
Definition MCGIDI.h:106
void setTemperature(double temperature)
Definition MCGIDI.h:100
enum MCGIDI_quantityLookupMode getMode(std::string const &quantity) const
MCGIDI_quantitiesLookupModes(int projectilesPOPID)
int setGroupIndex(GIDI_settings const &settings, bool encloseOutOfRange)
void setProjectileEnergy(double e_in)
Definition MCGIDI.h:94
void setMode(std::string const &quantity, enum MCGIDI_quantityLookupMode mode)
void setModeAll(enum MCGIDI_quantityLookupMode mode)
std::vector< std::string > getListOfLookupQuanities() const
int getGroupIndex(void) const
Definition MCGIDI.h:96
enum MCGIDI_quantityLookupMode getCrossSectionMode(void) const
Definition MCGIDI.h:103
double getProjectileEnergy(void) const
Definition MCGIDI.h:93
double getTemperature(void) const
Definition MCGIDI.h:99
MCGIDI_samplingSettings(enum GIDI::xDataTOM_frame frame, bool wantVelocities, double(*rng)(void *), void *rngState)
int setProductMultiplicityBias(GIDI::statusMessageReporting *smr, int PoPID, double fractor)
double getProductMultiplicityBias(int PoPID) const
Definition MCGIDI.h:143
GIDI::MCGIDI_POP * mPoP
Definition MCGIDI.h:135
enum GIDI::xDataTOM_frame mGotFrame
Definition MCGIDI.h:134
enum nfu_status_e nfu_status
enum ptwXY_interpolation_e ptwXY_interpolation
MCGIDI_POP * finalLevel
Definition MCGIDI.h:221
enum xDataTOM_frame frame
Definition MCGIDI.h:370
MCGIDI_pdfsOfXGivenW dists
Definition MCGIDI.h:372
double energyToMeVFactor
Definition MCGIDI.h:371
MCGIDI_KalbachMann_ras * ras
Definition MCGIDI.h:373
double level_MeV
Definition MCGIDI.h:232
MCGIDI_POP * next
Definition MCGIDI.h:226
char * name
Definition MCGIDI.h:228
MCGIDI_GammaBranching * gammas
Definition MCGIDI.h:234
MCGIDI_POP * parent
Definition MCGIDI.h:227
int globalPoPsIndex
Definition MCGIDI.h:229
int numberOfGammaBranchs
Definition MCGIDI.h:233
double mass_MeV
Definition MCGIDI.h:231
MCGIDI_POP * first
Definition MCGIDI.h:239
int increment
Definition MCGIDI.h:238
MCGIDI_pdfsOfXGivenW * pdfOfEpGivenEAndMu
Definition MCGIDI.h:361
enum xDataTOM_frame frame
Definition MCGIDI.h:359
MCGIDI_pdfsOfXGivenW pdfOfMuGivenE
Definition MCGIDI.h:360
MCGIDI_angular * recoilProduct
Definition MCGIDI.h:317
MCGIDI_pdfsOfXGivenW dists
Definition MCGIDI.h:318
enum xDataTOM_frame frame
Definition MCGIDI.h:315
double productMass_MeV
Definition MCGIDI.h:319
enum MCGIDI_angularType type
Definition MCGIDI.h:316
enum xDataTOM_frame frame
Definition MCGIDI.h:252
MCGIDI_angularEnergy * angularEnergy
Definition MCGIDI.h:382
MCGIDI_energy * energy
Definition MCGIDI.h:380
MCGIDI_product * product
Definition MCGIDI.h:377
MCGIDI_angular * angular
Definition MCGIDI.h:379
enum MCGIDI_distributionType type
Definition MCGIDI.h:378
MCGIDI_energyAngular * energyAngular
Definition MCGIDI.h:381
MCGIDI_KalbachMann * KalbachMann
Definition MCGIDI.h:383
enum xDataTOM_frame frame
Definition MCGIDI.h:353
MCGIDI_pdfsOfXGivenW * pdfOfMuGivenEAndEp
Definition MCGIDI.h:355
MCGIDI_pdfsOfXGivenW pdfOfEpGivenE
Definition MCGIDI.h:354
MCGIDI_pdfsOfXGivenW dists
Definition MCGIDI.h:343
ptwXY_interpolation gInterpolation
Definition MCGIDI.h:346
ptwXYPoints * theta
Definition MCGIDI.h:345
double primaryGammaMassFactor
Definition MCGIDI.h:341
enum xDataTOM_frame frame
Definition MCGIDI.h:338
double e_inCOMFactor
Definition MCGIDI.h:342
MCGIDI_energyNBodyPhaseSpace NBodyPhaseSpace
Definition MCGIDI.h:349
double gammaEnergy_MeV
Definition MCGIDI.h:340
MCGIDI_pdfOfX g
Definition MCGIDI.h:347
MCGIDI_energyWeightedFunctionals weightedFunctionals
Definition MCGIDI.h:348
enum MCGIDI_energyType type
Definition MCGIDI.h:339
MCGIDI_reaction * reaction
Definition MCGIDI.h:388
MCGIDI_product * parent
Definition MCGIDI.h:389
enum MCGIDI_channelGenre genre
Definition MCGIDI.h:387
MCGIDI_product * products
Definition MCGIDI.h:393
MCGIDI_particle * prior
Definition MCGIDI.h:243
MCGIDI_particle * next
Definition MCGIDI.h:244
double mass_MeV
Definition MCGIDI.h:247
double * Xs
Definition MCGIDI.h:295
double * pdf
Definition MCGIDI.h:296
double * cdf
Definition MCGIDI.h:297
MCGIDI_pdfOfX * dist
Definition MCGIDI.h:304
ptwXY_interpolation interpolationWY
Definition MCGIDI.h:302
ptwXY_interpolation interpolationWY
Definition MCGIDI.h:309
statusMessageReporting * smr
Definition MCGIDI.h:308
enum MCGIDI_productMultiplicityType productMultiplicityType
Definition MCGIDI.h:263
ptwXYPoints * norms
Definition MCGIDI.h:404
MCGIDI_POP * pop
Definition MCGIDI.h:397
int delayedNeutronIndex
Definition MCGIDI.h:401
double delayedNeutronRate
Definition MCGIDI.h:402
MCGIDI_outputChannel decayChannel
Definition MCGIDI.h:408
MCGIDI_distribution distribution
Definition MCGIDI.h:407
ptwXYPoints * multiplicityVsEnergy
Definition MCGIDI.h:403
MCGIDI_outputChannel * outputChannel
Definition MCGIDI.h:399
int numberOfPiecewiseMultiplicities
Definition MCGIDI.h:405
ptwXYPoints ** piecewiseMultiplicities
Definition MCGIDI.h:406
MCGIDI_productInfo * productInfo
Definition MCGIDI.h:271
int numberOfAllocatedProducts
Definition MCGIDI.h:270
MCGIDI_target_heated * target
Definition MCGIDI.h:412
enum MCGIDI_reactionType reactionType
Definition MCGIDI.h:414
int domainValuesPresent
Definition MCGIDI.h:417
transportabilitiesMap * transportabilities
Definition MCGIDI.h:426
xDataTOM_attributionList attributes
Definition MCGIDI.h:416
int thresholdGroupIndex
Definition MCGIDI.h:418
double thresholdGroupedDeltaCrossSection
Definition MCGIDI.h:420
char const * outputChannelStr
Definition MCGIDI.h:415
MCGIDI_outputChannel outputChannel
Definition MCGIDI.h:424
ptwXPoints * crossSectionGrouped
Definition MCGIDI.h:423
double thresholdGroupDomain
Definition MCGIDI.h:419
MCGIDI_productsInfo productsInfo
Definition MCGIDI.h:425
ptwXYPoints * crossSection
Definition MCGIDI.h:422
MCGIDI_sampledProductsData * products
Definition MCGIDI.h:290
MCGIDI_target_heated * heatedTarget
Definition MCGIDI.h:453
MCGIDI_POP * projectilePOP
Definition MCGIDI.h:434
MCGIDI_POPs pops
Definition MCGIDI.h:433
ptwXYPoints * crossSection
Definition MCGIDI.h:440
xDataTOM_attributionList attributes
Definition MCGIDI.h:436
ptwXPoints * crossSectionGrouped
Definition MCGIDI.h:441
ptwXPoints * crossSectionGroupedForSampling
Definition MCGIDI.h:442
MCGIDI_reaction * reactions
Definition MCGIDI.h:444
transportabilitiesMap * transportabilities
Definition MCGIDI.h:445
MCGIDI_POP * targetPOP
Definition MCGIDI.h:435
MCGIDI_target_heated_info * heatedTargets
Definition MCGIDI.h:464
MCGIDI_POP * targetPOP
Definition MCGIDI.h:460
MCGIDI_POP * projectilePOP
Definition MCGIDI.h:459
xDataTOM_attributionList attributes
Definition MCGIDI.h:461
char * path
Definition MCGIDI.h:457
char * absPath
Definition MCGIDI.h:458
MCGIDI_target_heated * baseHeatedTarget
Definition MCGIDI.h:463
int nHeatedTargets
Definition MCGIDI.h:462
MCGIDI_target_heated_info ** readHeatedTargets
Definition MCGIDI.h:465
int xDataTOM_Int
Definition xDataTOM.h:16
xDataTOM_frame
Definition xDataTOM.h:23