#include <string.h>
#include "tpia_target.h"
#include "tpia_misc.h"
Go to the source code of this file.
Functions | |
int | tpia_angular_initialize (statusMessageReporting *smr, tpia_angular *angular) |
int | tpia_angular_release (statusMessageReporting *smr, tpia_angular *angular) |
int | tpia_angular_getFromElement (statusMessageReporting *smr, xData_element *angularElement, tpia_angular *angular) |
int | tpia_angular_SampleMu (statusMessageReporting *smr, tpia_angular *angular, tpia_decaySamplingInfo *decaySamplingInfo) |
int tpia_angular_getFromElement | ( | statusMessageReporting * | smr, | |
xData_element * | angularElement, | |||
tpia_angular * | angular | |||
) |
Definition at line 70 of file tpia_angular.cc.
References CLHEP::detail::n, tpia_frame_setFromElement(), and tpia_misc_getEqualProbableBin().
00070 { 00071 00072 xData_Int n, nBins; 00073 00074 if( ( tpia_frame_setFromElement( smr, angularElement, 3, &(angular->frame) ) ) != 0 ) return( 1 ); 00075 if( ( angular->binned.energies = tpia_misc_getEqualProbableBin( smr, angularElement, &n, &nBins ) ) != NULL ) { 00076 angular->binned.iValue = 0; 00077 angular->binned.dValue = 0; 00078 angular->binned.nBins = (int) nBins; 00079 angular->binned.numberOfEs = (int) n; 00080 return( 0 ); 00081 } 00082 return( 1 ); 00083 }
int tpia_angular_initialize | ( | statusMessageReporting * | smr, | |
tpia_angular * | angular | |||
) |
Definition at line 49 of file tpia_angular.cc.
References tpia_frame_setFromString().
Referenced by tpia_product_initialize().
00049 { 00050 00051 memset( angular, 0, sizeof( tpia_angular ) ); 00052 if( tpia_frame_setFromString( smr, "", "", 0, &(angular->frame) ) ) return( 1 ); 00053 angular->binned.numberOfEs = 0; 00054 angular->binned.energies = NULL; 00055 return( 0 ); 00056 }
int tpia_angular_release | ( | statusMessageReporting * | smr, | |
tpia_angular * | angular | |||
) |
Definition at line 60 of file tpia_angular.cc.
References xData_free().
Referenced by tpia_product_release().
00060 { 00061 00062 //angular->binned.energies = xData_free( smr, angular->binned.energies ); 00063 angular->binned.energies = (tpia_EqualProbableBinSpectrum*) xData_free( smr, angular->binned.energies ); 00064 angular->binned.numberOfEs = 0; 00065 return( 0 ); 00066 }
int tpia_angular_SampleMu | ( | statusMessageReporting * | smr, | |
tpia_angular * | angular, | |||
tpia_decaySamplingInfo * | decaySamplingInfo | |||
) |
Definition at line 87 of file tpia_angular.cc.
References tpia_misc_sampleEqualProbableBin().
Referenced by G4GIDI_target::getElasticFinalState(), and tpia_decayChannel_sampleProductsAtE().
00087 { 00088 00089 tpia_EqualProbableBinSpectra *binned = &(angular->binned); 00090 int nBins = binned->nBins, status = 1; 00091 double mu; 00092 /* 00093 Currently, only equal probable binning is supported. 00094 Need to return frame info for mu also. 00095 */ 00096 if( binned->numberOfEs > 0 ) { 00097 tpia_misc_sampleEqualProbableBin( smr, decaySamplingInfo, decaySamplingInfo->e_in, nBins, binned, &mu ); 00098 if( mu < -1. ) mu = -1.; 00099 if( mu > 1. ) mu = 1.; 00100 decaySamplingInfo->mu = mu; 00101 status = 0; 00102 } 00103 00104 return( status ); 00105 }