12 #if defined __cplusplus
85 char const *
name, *label, *delayedNeutron, *multiplicityStr, *multiplicityUnits[2] = {
"MeV",
"" };
88 ptwXYPoints *multiplicityVsEnergy = NULL, *norms1 = NULL, *norms2 = NULL;
103 if( strcmp( delayedNeutron,
"delayed" ) == 0 ) {
109 (*delayedNeutronIndex)++;
115 if( strcmp( multiplicityStr,
"energyDependent" ) ) {
133 if( strcmp( product->
pop->
name,
"gamma" ) == 0 ) {
140 if( norms2 != NULL ) {
148 if( ( norms1 != NULL ) && ( norms2 != NULL ) ) {
154 product->
norms = norms1;
155 if( norms2 != NULL ) product->
norms = norms2;
164 if( multiplicityVsEnergy != NULL )
ptwXY_free( multiplicityVsEnergy );
179 char const *multiplicityUnits[2] = {
"MeV",
"" };
181 if( ( product->piecewiseMultiplicities = (
ptwXYPoints **)
smr_malloc2( smr, regionsXYs->length *
sizeof(
ptwXYPoints * ), 1,
"piecewiseMultiplicities" ) ) == NULL )
return( 1 );
183 for( i = 0; i < regionsXYs->length; i++ ) {
185 XYs = &(regionsXYs->XYs[i]);
187 ) == NULL )
return( 1 );
188 product->piecewiseMultiplicities[i] = multiplicityVsEnergy;
189 product->numberOfPiecewiseMultiplicities++;
200 double *coefficients;
201 char const *energyUnit;
225 double E = EMin,
dE = ( EMax - EMin ) / n;
227 for( i = 1; i <
n; i++ ) {
257 char const *link, *energyInMWUnits[2] = {
"MeV",
"" };
258 xDataTOM_element *reference, *productTOM, *multiplicity, *weights, *pointwise;
275 if( *multiplicityVsEnergy != NULL ) *multiplicityVsEnergy =
ptwXY_free( *multiplicityVsEnergy );
276 if( *norms != NULL ) *norms =
ptwXY_free( *norms );
290 double productMass_MeV,
double residualMass_MeV ) {
328 double y,
norm = 1.0;
340 multiplicity = (
int) y;
341 if( r < ( y - multiplicity ) ) multiplicity++;
343 return( multiplicity );
364 if( incrementSize < 10 ) incrementSize = 10;
368 sampledProductsDatas->
products = NULL;
419 if( index < 0 )
return( NULL );
421 return( &(sampledProductsDatas->
products[index]) );
424 #if defined __cplusplus