RAT Namespace Reference
|
Ratpac-two
|
Typedefs | |
| typedef std::map< DBTableKey, simple_ptr_nocopy< DBTable > > | DBTableSet |
| typedef simple_ptr_nocopy< DBLink > | DBLinkPtr |
| typedef std::map< std::string, DBLinkPtr > | DBLinkGroup |
| typedef G4THitsCollection< BWVetGenericChamberHit > | BWVetGenericChamberHitsCollection |
| typedef G4THitsCollection< GeoFiberSensitiveDetectorHit > | GeoFiberSensitiveDetectorHitsCollection |
Enumerations | |
| enum | EReactions { iBAD = -9999 , NullParticle = -2 , DecayBeta = +1 , DecayEC = -1 , DecayGamma = 0 , DecayAlpha = +2 } |
| enum | ConvertType { ParseInt , ParseDouble , ParseString } |
Functions | |
| Processor * | construct_user_proc (std::string userProcName) |
| int | get_pdgcode (const G4PrimaryParticle *p) |
| std::string | to_ratdb_float_string (double value) |
| std::string | to_ratdb_double_string (double value) |
| std::string | escape_ratdb_string (const std::string &value) |
| omtext | warn (ferr) |
| omtext | info (fout) |
| void | signal_handler (int signo) |
| template<> | |
| std::string | DBTable::Get< std::string > (const std::string &name) const |
| template<> | |
| std::vector< int > | RAT::DBTable::Get< std::vector< int > > (const std::string &name) const |
| template<> | |
| std::vector< double > | RAT::DBTable::Get< std::vector< double > > (const std::string &name) const |
| template<> | |
| std::vector< std::string > | RAT::DBTable::Get< std::vector< std::string > > (const std::string &name) const |
| template<> | |
| std::vector< bool > | RAT::DBTable::Get< std::vector< bool > > (const std::string &name) const |
| template<> | |
| json::Value | RAT::DBTable::Get< json::Value > (const std::string &name) const |
| std::vector< double > | unpack_double (const std::string &contents) |
| std::vector< int > | unpack_int (const std::string &contents) |
| std::string | PickFile (std::string name, std::string enclosing_file) |
| double | GetRandomNumber (double rmin=0., double rmax=1.) |
| double | Nucl_Beta (int Beta, double Z, double A, double W, double W0, int N, double vMass) |
| double | Nucl_Wave (int Beta, double Z, double A, double W, int k) |
| double | Nucl_Size (int Beta, double Z, double W, int k) |
| double | Nucl_Radius (double A) |
| double | Nucl_Mass (double A, double Z) |
| double | Nucl_Wave_Phase (int Beta, double Z, double A, double W, int k, int sel) |
| double | Screening_Potential (double Z, double p, int Beta) |
| std::complex< double > | Hyper1F1Norm (std::complex< double > A, std::complex< double > B, std::complex< double > Z) |
| double | Factorial (int N) |
| double | HyperGeometric_PQF (double A[], int nA, double B[], int nB, double Z) |
| double | GammaLn (double xx) |
| std::complex< double > | GammaLn_Complex (std::complex< double > xx) |
| long long | factorial (int n) |
| double | IBDTGraph2TF1 (Double_t *x, Double_t *) |
| double | ESTGraph2TF1 (Double_t *x, Double_t *) |
| double | CCTGraph2TF1 (Double_t *x, Double_t *) |
| double | ICCTGraph2TF1 (Double_t *x, Double_t *) |
| double | NCTGraph2TF1 (Double_t *x, Double_t *) |
| double | NCNUTGraph2TF1 (Double_t *x, Double_t *) |
| double | INCTGraph2TF1 (Double_t *x, Double_t *) |
| G4VSolid * | MakeFacetSolid (const G4String &pName, std::vector< G4TwoVector > polygon, G4double scale, G4double hz, G4double angle, G4VSolid *basesolid) |
| G4VSolid * | MakeFacetSphereSolid (const G4String &pName, std::vector< G4TwoVector > polygon, std::vector< G4double > angles, G4double OR, G4VSolid *basesolid) |
| G4VSolid * | MakeTubeFacetSolid (const G4String &pName, std::vector< G4TwoVector > polygon, G4double scale, G4double hz, G4double angle, G4double r_max) |
| G4VSolid * | MakeTubeFacetSolid (const G4String &pName, std::vector< G4TwoVector > polygon, G4double scale, G4double hz, G4double angle, G4double r_min, G4double r_max) |
| G4VSolid * | MakeConeFacetSolid (const G4String &pName, std::vector< G4TwoVector > polygon, G4double scale, G4double hz, G4double angle, G4double r_max_1, G4double r_max_2) |
| G4VSolid * | MakeConeFacetSolid (const G4String &pName, std::vector< G4TwoVector > polygon, G4double scale, G4double hz, G4double angle, G4double r_min_1, G4double r_max_1, G4double r_min_2, G4double r_max_2) |
| G4VSolid * | MakeShellFacetSolid (const G4String &pName, std::vector< G4TwoVector > polygon, std::vector< G4double > angles, G4double IR, G4double OR, G4double dTheta) |
| G4VSolid * | MakeSphereFacetSolid (const G4String &pName, std::vector< G4TwoVector > polygon, std::vector< G4double > angles, G4double OR, G4double dTheta) |
| G4VSolid * | MakeUnionSolidArray (const std::string &name, const std::vector< G4VSolid * > &solids, int firstIndex=0, int length=-1) |
| bool | check_intersect (G4ThreeVector newpos, std::vector< G4ThreeVector > &pos, double radius) |
| std::string | ConvertIntToString (int i) |
| std::string | to_string (const TSocket *socket) |
| void | write_object_with_directory (TDirectory *dir, const std::string &path, TObject *obj) |
| std::string | get_short_hostname () |
| std::string | get_long_hostname () |
| Double_t | GaussianRatioPDF (Double_t *x, Double_t *par) |
| template<typename T > | |
| void | deepdelete_vector (std::vector< T * > &vect) |
| template<typename T > | |
| void | deepcopy_vector (std::vector< T * > &dest, const std::vector< T * > &src) |
| template<typename T > | |
| void | endcopy_vector (std::vector< T * > &dest, const std::vector< T * > &src) |
| void | mute_g4mute () |
| void | mute_g4unmute () |
| size_t | EstimateNPE (double charge, double vpe_charge, double npe_estimate_charge_width, size_t npe_estimate_max_pes) |
| Estimate the number of PEs in a resolved wave packet using a gaussian single-PE charge PDF. More... | |
| int | CheckOrientation (std::vector< G4TwoVector > &G4Polygon) |
| double | RadicalInverse (int n, int base) |
| int | ReadFile (const std::string &filename, std::string &filecontents) |
| G4PhysicsOrderedFreeVector * | Integrate_MPV_to_POFV (G4MaterialPropertyVector *inputVector) |
| double | SimpsIntegral (const std::vector< double > &samples, double baseline, int start, int end) |
| std::string | strip (const std::string &s, const std::string &stripchars) |
| std::string | strip_default (const std::string &s) |
| template<typename T > | |
| bool | TimeSort (const std::pair< T, T > &firstPair, const std::pair< T, T > &secondPair) |
| void | TimeSortMerge (std::vector< std::pair< int, int >> &pulseTimes) |
| void | TimeSortMerge (std::vector< std::pair< double, double >> &pulseTimes) |
| TTimeStamp | AddNanoseconds (const TTimeStamp &a, const long nanoseconds) |
| long | TimeDifference (const TTimeStamp &a, const TTimeStamp &b) |
Variables | |
| omtext | warn |
| omtext | info |
| omtext | detail |
| omtext | debug |
| G4Allocator< TrackInfo > | aTrackInfoAllocator |
| G4DLLIMPORT G4Allocator< Trajectory > | aTrajectoryAllocator |
| const int | maxServerBytes = 200000000 |
| const int | kNPmax = 250 |
| double | plog69 [] |
| ************************************************/ More... | |
| const double | DELTA = CLHEP::neutron_mass_c2 - CLHEP::proton_mass_c2 |
| const double | GFERMI = 1.16639e-11 / CLHEP::MeV / CLHEP::MeV |
| const double | XMaxDefault = 1e-45 |
| const double | XcMeVtoCmsqrd = 0.389379292e-21 |
| TGraph * | graphIBD |
| TGraph * | graphES |
| TGraph * | graphCC |
| TGraph * | graphICC |
| TGraph * | graphNC |
| TGraph * | graphINC |
| TGraph * | graphNCRate |
| TFile * | IBD_fe = new TFile("$RATSHARE/models/SNGen/nu_e_data_1_7.root") |
| TF1 * | glum_e = (TF1 *)IBD_fe->Get("f1") |
| TF1 * | gmene_e = (TF1 *)IBD_fe->Get("f3") |
| TF1 * | galpha_e = (TF1 *)IBD_fe->Get("f2") |
| TFile * | IBD_feb = new TFile("$RATSHARE/models/SNGen/nu_eb_data_1_7.root") |
| TF1 * | glum_eb = (TF1 *)IBD_feb->Get("f1") |
| TF1 * | gmene_eb = (TF1 *)IBD_feb->Get("f3") |
| TF1 * | galpha_eb = (TF1 *)IBD_feb->Get("f2") |
| TFile * | IBD_fx = new TFile("$RATSHARE/models/SNGen/nu_x_data_1_7_X.root") |
| TF1 * | glum_x = (TF1 *)IBD_fx->Get("f1") |
| TF1 * | gmene_x = (TF1 *)IBD_fx->Get("f3") |
| TF1 * | galpha_x = (TF1 *)IBD_fx->Get("f2") |
| G4Allocator< BWVetGenericChamberHit > | BWVetGenericChamberHitAllocator |
| G4Allocator< GeoFiberSensitiveDetectorHit > | GeoFiberSensitiveDetectorHitAllocator |
| discard_streambuf | discard |
| std::streambuf * | g4cout_orig = G4cout.rdbuf() |
| std::streambuf * | g4cerr_orig = G4cerr.rdbuf() |
| const long | TIME_UTIL_BILLION = 1000000000L |
Detailed Description
AmBeSource generates photons and neutrons from americium+beryllium interactions. Each neutron is given an energy by the AmBeNeutronSpectrum function, which the probability density of the produced neutrons as a function of neutron energy. The photons are generated by the AmBeGammaSpectrum function with a probability found in the litterature.
CfSource generates prompt photons and delayed neutrons from radioactive Californium decays. The supported isotope is 252, which is also the default isotope given ReactorConstants. The neutrons are generated with the correct multiplicity and each neutron is given an energy by the Cf252NeutronSpectrum function, which the probability density of the produced neutrons as a function of neutron energy. The prompt photons are generated by the Cf252GammaMultiplicityFit and Cf252GammaSpectrum functions.
The number and locations of the Cf sources are read in from cf252_position.txt and parsed by CfSource to yield the source vertex R, cos(theta), and phi.
23-Mar-2006 WGS: The previous paragraph is now superceded by generator structure of RAT. The cff252_position.txt file is no longe read. Multiple "sources" are now implemented via multiple RAT generators.
vertex generator that can generate the products of a inverse beta-decay reaction from a reactor anti-neutrino. The direction of the neutrino is supplied, and the energy and angle of the produced positron and neutron are drawn from the distribution produced by the differential cross-section and a reactor anti-neutrino energy spectrum.
Function Documentation
◆ CheckOrientation()
| int RAT::CheckOrientation | ( | std::vector< G4TwoVector > & | G4Polygon | ) |
Takes the coordinates of a polygon (in 2-D vector format) and checks the orientation. G4 seems to want polygons to be oriented in the negative z direction in a right handed sense. The function will reorder the given coordinates if necessary
◆ EstimateNPE()
| size_t RAT::EstimateNPE | ( | double | charge, |
| double | vpe_charge, | ||
| double | npe_estimate_charge_width, | ||
| size_t | npe_estimate_max_pes | ||
| ) |
Estimate the number of PEs in a resolved wave packet using a gaussian single-PE charge PDF.
- Parameters
-
charge The measured charge of the wave packet. vpe_charge The nominal charge of a single PE. npe_estimate_charge_width The width of the Gaussian single-PE charge distribution. npe_estimate_max_pes The upper limit for the number of PEs to consider.
- Returns
- Estimated number of PEs.
◆ Integrate_MPV_to_POFV()
| G4PhysicsOrderedFreeVector * RAT::Integrate_MPV_to_POFV | ( | G4MaterialPropertyVector * | inputVector | ) |
Convert a photon spectrum in a material property vector into a cumulative distribution for random sampling.
With the resulting G4PhysicsOrderedFreeVector, the recipe for obtaining a random sample is:
G4PhysicsOrderedFreeVector *pofv = [your vector]; double integralValue = G4UniformRand()*pofv->GetMaxValue(); double sample = pofv->GetEnergy(integralValue);
◆ TimeSort()
|
inline |
Function to sort time intervals.
Variable Documentation
◆ plog69
| double RAT::plog69[] |
************************************************/
Generated by