Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/processes/hadronic/models/lend/src/MCGIDI_distribution.cc

Version: [ ReleaseNotes ] [ 1.0 ] [ 1.1 ] [ 2.0 ] [ 3.0 ] [ 3.1 ] [ 3.2 ] [ 4.0 ] [ 4.0.p1 ] [ 4.0.p2 ] [ 4.1 ] [ 4.1.p1 ] [ 5.0 ] [ 5.0.p1 ] [ 5.1 ] [ 5.1.p1 ] [ 5.2 ] [ 5.2.p1 ] [ 5.2.p2 ] [ 6.0 ] [ 6.0.p1 ] [ 6.1 ] [ 6.2 ] [ 6.2.p1 ] [ 6.2.p2 ] [ 7.0 ] [ 7.0.p1 ] [ 7.1 ] [ 7.1.p1 ] [ 8.0 ] [ 8.0.p1 ] [ 8.1 ] [ 8.1.p1 ] [ 8.1.p2 ] [ 8.2 ] [ 8.2.p1 ] [ 8.3 ] [ 8.3.p1 ] [ 8.3.p2 ] [ 9.0 ] [ 9.0.p1 ] [ 9.0.p2 ] [ 9.1 ] [ 9.1.p1 ] [ 9.1.p2 ] [ 9.1.p3 ] [ 9.2 ] [ 9.2.p1 ] [ 9.2.p2 ] [ 9.2.p3 ] [ 9.2.p4 ] [ 9.3 ] [ 9.3.p1 ] [ 9.3.p2 ] [ 9.4 ] [ 9.4.p1 ] [ 9.4.p2 ] [ 9.4.p3 ] [ 9.4.p4 ] [ 9.5 ] [ 9.5.p1 ] [ 9.5.p2 ] [ 9.6 ] [ 9.6.p1 ] [ 9.6.p2 ] [ 9.6.p3 ] [ 9.6.p4 ] [ 10.0 ] [ 10.0.p1 ] [ 10.0.p2 ] [ 10.0.p3 ] [ 10.0.p4 ] [ 10.1 ] [ 10.1.p1 ] [ 10.1.p2 ] [ 10.1.p3 ] [ 10.2 ] [ 10.2.p1 ] [ 10.2.p2 ] [ 10.2.p3 ] [ 10.3 ] [ 10.3.p1 ] [ 10.3.p2 ] [ 10.3.p3 ] [ 10.4 ] [ 10.4.p1 ] [ 10.4.p2 ] [ 10.4.p3 ] [ 10.5 ] [ 10.5.p1 ] [ 10.6 ] [ 10.6.p1 ] [ 10.6.p2 ] [ 10.6.p3 ] [ 10.7 ] [ 10.7.p1 ] [ 10.7.p2 ] [ 10.7.p3 ] [ 10.7.p4 ] [ 11.0 ] [ 11.0.p1 ] [ 11.0.p2 ] [ 11.0.p3, ] [ 11.0.p4 ] [ 11.1 ] [ 11.1.1 ] [ 11.1.2 ] [ 11.1.3 ] [ 11.2 ] [ 11.2.1 ] [ 11.2.2 ] [ 11.3.0 ]

Diff markup

Differences between /processes/hadronic/models/lend/src/MCGIDI_distribution.cc (Version 11.3.0) and /processes/hadronic/models/lend/src/MCGIDI_distribution.cc (Version 1.1)


  1 /*                                                  1 
  2 # <<BEGIN-copyright>>                             
  3 # <<END-copyright>>                               
  4 */                                                
  5 #include <string.h>                               
  6 #include <cmath>                                  
  7                                                   
  8 #include "MCGIDI.h"                               
  9 #include "MCGIDI_misc.h"                          
 10                                                   
 11 #if defined __cplusplus                           
 12 namespace GIDI {                                  
 13 using namespace GIDI;                             
 14 #endif                                            
 15                                                   
 16 /*                                                
 17 **********************************************    
 18 */                                                
 19 MCGIDI_distribution *MCGIDI_distribution_new(     
 20                                                   
 21     MCGIDI_distribution *distribution;            
 22                                                   
 23     if( ( distribution = (MCGIDI_distribution     
 24     if( MCGIDI_distribution_initialize( smr, d    
 25     return( distribution );                       
 26 }                                                 
 27 /*                                                
 28 **********************************************    
 29 */                                                
 30 int MCGIDI_distribution_initialize( statusMess    
 31                                                   
 32     memset( distribution, 0, sizeof( MCGIDI_di    
 33     return( 0 );                                  
 34 }                                                 
 35 /*                                                
 36 **********************************************    
 37 */                                                
 38 MCGIDI_distribution *MCGIDI_distribution_free(    
 39                                                   
 40     MCGIDI_distribution_release( smr, distribu    
 41     smr_freeMemory( (void **) &distribution );    
 42     return( NULL );                               
 43 }                                                 
 44 /*                                                
 45 **********************************************    
 46 */                                                
 47 int MCGIDI_distribution_release( statusMessage    
 48                                                   
 49     if( distribution->angular ) distribution->    
 50     if( distribution->energy ) distribution->e    
 51     if( distribution->KalbachMann ) distributi    
 52     if( distribution->energyAngular ) distribu    
 53     if( distribution->angularEnergy ) distribu    
 54                                                   
 55     MCGIDI_distribution_initialize( smr, distr    
 56     return( 0 );                                  
 57 }                                                 
 58 /*                                                
 59 **********************************************    
 60 */                                                
 61 int MCGIDI_distribution_parseFromTOM( statusMe    
 62                                                   
 63     char const *nativeData, *gammaEnergy;         
 64     double gammaEnergy_MeV{0.0};                  
 65     MCGIDI_distribution *distribution = &(prod    
 66     xDataTOM_element *distributionElement;        
 67     enum MCGIDI_energyType energyType = MCGIDI    
 68                                                   
 69     MCGIDI_distribution_initialize( smr, distr    
 70                                                   
 71     distribution->product = product;              
 72     if( ( distributionElement = xDataTOME_getO    
 73     if( ( nativeData = xDataTOM_getAttributesV    
 74                                                   
 75     if( strcmp( product->pop->name, "gamma" )     
 76         if( ( gammaEnergy = xDataTOM_getAttrib    
 77             if( MCGIDI_misc_PQUStringToDoubleI    
 78             energyType = MCGIDI_energyType_dis    
 79         else if( ( gammaEnergy = xDataTOM_getA    
 80             if( MCGIDI_misc_PQUStringToDoubleI    
 81             energyType = MCGIDI_energyType_pri    
 82         }                                         
 83         if( gammaEnergy != NULL ) {               
 84             if( strcmp( nativeData, "angular"     
 85                 smr_setReportError2( smr, smr_    
 86                     gammaEnergy, nativeData );    
 87                 goto err;                         
 88             }                                     
 89             nativeData = "uncorrelated";          
 90         }                                         
 91     }                                             
 92                                                   
 93     if( strcmp( nativeData, "angular" ) == 0 )    
 94         if( MCGIDI_angular_parseFromTOM( smr,     
 95     else if( strcmp( nativeData, "uncorrelated    
 96         if( MCGIDI_uncorrelated_parseFromTOM(     
 97     else if( strcmp( nativeData, "energyAngula    
 98         if( MCGIDI_energyAngular_parseFromTOM(    
 99     else if( strcmp( nativeData, "angularEnerg    
100         if( MCGIDI_angularEnergy_parseFromTOM(    
101     else if( strcmp( nativeData, "Legendre" )     
102         if( MCGIDI_energyAngular_parseFromTOM(    
103     else if( strcmp( nativeData, "LLNLAngular_    
104         if( MCGIDI_LLNLAngular_angularEnergy_p    
105     else if( strcmp( nativeData, "none" ) == 0    
106         distribution->type = MCGIDI_distributi    
107     else if( strcmp( nativeData, "unknown" ) =    
108         distribution->type = MCGIDI_distributi    
109     else {                                        
110         smr_setReportError2( smr, smr_unknownI    
111         goto err;                                 
112     }                                             
113                                                   
114     return( 0 );                                  
115                                                   
116 err:                                              
117     MCGIDI_distribution_release( smr, distribu    
118     return( 1 );                                  
119 }                                                 
120                                                   
121 #if defined __cplusplus                           
122 }                                                 
123 #endif                                            
124                                                   
125