Geant4 11.2.2
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
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