Luận án Nghiên cứu tham số hóa tiết diện quang phân hạch của ²³⁸U và mô phỏng sử dụng GeanT4 phục vụ cho thiết kế hệ thiết bị Igisol tại dự án ELI-NP

The Extreme Light Infrastructure (ELI), which is marked on the European

Strategy Forum on Research Infrastructures (ESFRI) Roadmap as one of the priority research infrastructure projects for Europe, will be the world’s first international

laser research infrastructure, pursuing unique science and research applications for

international users. ELI has three main research center located in three different countries: ELI-Beamlines facility in the Czech, the ELI-ALPS facility in Hungary, and

ELI-Nuclear Physics (ELI-NP) in Romania [1, 2, 3, 4].

ELI-NP is expected to be the most advanced research facility in the world in

the field of photonuclear physics, and a new interdisciplinary research field that brings

together, for the first time, high-power lasers and nuclear physics. ELI-NP will offer

a highly-polarized tunable mono-energetic γ beam in the range from 200 keV to 19.5

MeV. This kind of beam will open new possibilities for high-resolution spectroscopy at

higher nuclear excitation energies. This will lead to a better understanding of nuclear

structure at higher excitation energies with many doorway states, their damping widths

and chaotic behaviour, but also new fluctuating properties in the time and energy

domain. Besides, the ELI-NP gamma beam is also suitable for the production of

the radioactive ion beam (RIB) through photofission of Uranium. The advance in

the understanding of nuclear structure far from stability using RIB is one of the top

priorities defined by the nuclear physicist community in the world. To support this

idea, an IGISOL (Ion guide isotope separation on-line) facility will be constructed to

extract the photofission fragments to form RIBs at ELI-NP. The heart of the IGISOL

is a Cryogenic Stopping Cell (CSC), where the photofission process takes place. At

ELI-NP, the development of a CSC is considered [2, 5]

pdf 122 trang kiennguyen 18/08/2022 8060
Bạn đang xem 20 trang mẫu của tài liệu "Luận án Nghiên cứu tham số hóa tiết diện quang phân hạch của ²³⁸U và mô phỏng sử dụng GeanT4 phục vụ cho thiết kế hệ thiết bị Igisol tại dự án ELI-NP", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Luận án Nghiên cứu tham số hóa tiết diện quang phân hạch của ²³⁸U và mô phỏng sử dụng GeanT4 phục vụ cho thiết kế hệ thiết bị Igisol tại dự án ELI-NP

Luận án Nghiên cứu tham số hóa tiết diện quang phân hạch của ²³⁸U và mô phỏng sử dụng GeanT4 phục vụ cho thiết kế hệ thiết bị Igisol tại dự án ELI-NP
MINISTRY OF EDUCATION AND 
TRAINING 
VIETNAM ACADEMY OF 
SCIENCE AND TECHNOLOGY 
GRADUATE UNIVERSITY OF SCIENCE AND TECHNOLOGY 
----------------------------- 
LÊ TUẤN ANH 
STUDY ON PARAMETRIZATION OF PHOTOFISSION 
CROSS-SECTION OF 238U AND OPTIMIZATION 
SIMULATION USING GEANT4 FOR DESIGN OF THE 
IGISOL FACILITY AT ELI-NP PROJECT 
PhD THESIS IN ATOMIC AND NUCLEAR PHYSICS 
Hanoi – 2021 
MINISTRY OF EDUCATION AND 
TRAINING 
VIETNAM ACADEMY OF 
SCIENCE AND TECHNOLOGY 
GRADUATE UNIVERSITY OF SCIENCE AND TECHNOLOGY 
----------------------------- 
LÊ TUẤN ANH 
STUDY ON PARAMETRIZATION OF PHOTOFISSION 
CROSS-SECTION OF 238U AND OPTIMIZATION 
SIMULATION USING GEANT4 FOR DESIGN OF THE 
IGISOL FACILITY AT ELI-NP PROJECT 
 Major: Atomic and Nuclear physics 
 Code: 9440106 
PhD THESIS IN ATOMIC AND NUCLEAR PHYSICS 
 SUPERVISORS: 
 1. Dr, PHAN VIET CUONG 
 2. Prof, DIMITER L. BALABANSKI 
Hanoi – 2021 
LỜI CAM ĐOAN
Tôi xin cam đoan đây là công trình nghiên cứu mà phần chủ yếu do tôi
trực tiếp thực hiện, phần còn lại có sự tham gia hỗ trợ của các đồng nghiệp tại
nhóm RA4, thuộc dự án ELI-NP tại Romania. Các kết quả nghiên cứu là trung
thực và chưa từng được sử dụng trong bất kỳ công trình nào khác. Luận án
cũng sử dụng một số thông tin, số liệu thực nghiệm từ nhiều nguồn số liệu khác
nhau và chúng đều được trích dẫn rõ nguồn gốc.
Tác giả
NCS. Lê Tuấn Anh
i
Acknowledgements
First and foremost, I gratefully express my best thanks to my supervisors, Dr.
Phan Viet Cuong at Research and Development Center for Radiation Technology and
Prof. Dimiter L. Balabanski at ELI-NP Romania for giving me an opportunity to join
ELI-NP project, to work in an international researching environments, and for their
limitless support and help me when I was in need.
I would like to thank Dr. Paul Constantin in RA4-ELI-NP group, who was
alway ready to spend his treasure time to help me through when I got problem not in
this work but also daily life in Romania. And I am also grateful to Dr. Bo Mei, Dr.
Deepika Choudhury, and all the members of RA4, as well as ELI-NP, who help me a
lot when I was at Romania.
I would like to thank the Board of Directors and all members of Graduate
University of Science and Technology for helping me during the process of doing my
thesis.
I also would like to thank my colleagues and friends in the VNU University of
Science, in Centre of Nuclear Physics, Institute of Physics, and in Vietnam Atomic
Energy Institute for their friendships and encouragements.
I would like to express my special thank to all my colleagues at Research and
Development Center for always giving me convenience to finish my work.
I would like to thank to all my colleagues at Institute for Nuclear Science and
Technology for their unlimited supports.
I would like to give my deep gratitude to my parents, my grandma, brother and
other members in my big family for their encouragements at all time.
And aftermost, I would like to express the most special thank to my wife who
has been always beside me, taken care of my two angel babies, to my beloved children
who are the motivation of my working.
ii
This work was supported by Extreme Light Infrastructure Nuclear Physics (ELI-
NP) Phase II, a project co-financed by the Romanian Government and the European
Union through the European Regional Development Fund -the Competitiveness Oper-
ational Program (1/07.07.2016, COP, ID 1334).
iii
Contents
Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ii
Abbreviations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii
List of tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . viii
List of figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi
Abstract 1
Introduction 2
1 OVERVIEW 4
1.1 The Extreme Light Infrastructure Nuclear Physics facility . . . . . . . 4
1.1.1 Gamma Beam System . . . . . . . . . . . . . . . . . . . . . . . 5
1.2 Methods for production of RIB . . . . . . . . . . . . . . . . . . . . . . 9
1.2.1 The ISOL technique . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2.2 The in-flight method . . . . . . . . . . . . . . . . . . . . . . . . 10
1.2.3 Ion guide isotope separation online technique . . . . . . . . . . 11
1.2.4 Method for production of RIB at ELI-NP . . . . . . . . . . . . 12
1.3 The future ELI-NP IGISOL . . . . . . . . . . . . . . . . . . . . . . . . 13
1.4 Introduction of Geant4 toolkit . . . . . . . . . . . . . . . . . . . . . . 16
1.4.1 Energy loss of ions . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.4.2 Physics processes for e− and e+ . . . . . . . . . . . . . . . . . . 21
iv
1.4.3 Processes induced by gamma beam . . . . . . . . . . . . . . . . 24
1.4.4 Mandatory method and classes of a Geant4-based application . 25
1.5 Photofission process . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
1.6 Purposes of the Thesis . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2 STUDY ON PARAMETRIZATION OF PHOTOFISSION CROSS-
SECTION OF 238U 30
2.1 Empirical parametrization for total cross-section, mass yield and isobaric
charge distribution of 238U photofission . . . . . . . . . . . . . . . . . . 30
2.1.1 Parametrization for total cross-section . . . . . . . . . . . . . . 30
2.1.2 Parametrization for photofission mass yield . . . . . . . . . . . . 33
2.1.3 Parametrization for isobaric charge distributions . . . . . . . . . 35
2.2 Validation of the empirical parametrization . . . . . . . . . . . . . . . . 39
2.3 Prediction of neutron-rich nuclei yield . . . . . . . . . . . . . . . . . . . 44
2.4 Chapter conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3 OPTIMIZING THE DESIGN OF CRYOGENIC STOPPING CELL
FOR IGISOL FACILITY AT ELI-NP 48
3.1 The structure of the implemented Geant4-based code . . . . . . . . . . 48
3.2 Implementation of photofission process into Geant4 . . . . . . . . . . . 50
3.3 Ionic effective charge . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.4 Target geometry optimization . . . . . . . . . . . . . . . . . . . . . . . 54
3.4.1 The beam spot size . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.4.2 Target geometry . . . . . . . . . . . . . . . . . . . . . . . . . . 56
v
3.4.3 Optimize the thinkness of foil targets . . . . . . . . . . . . . . . 57
3.4.4 The thinkness of backing layers . . . . . . . . . . . . . . . . . . 59
3.4.5 The dependence of the photofission fragment release rate on foil
transverse size A, the foil tilting angle a, and the inter-foil distance 60
3.4.6 Remarks for target geometry . . . . . . . . . . . . . . . . . . . . 62
3.5 The stopping length of photofission fragments in Helium gas. Guidance
for choosing the width of CSC . . . . . . . . . . . . . . . . . . . . . . . 63
3.5.1 The characteristics of release photofission fragments from back-
ing layers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
3.5.2 Ion stopping in the gas cell. Choosing the width of CSC . . . . 64
3.6 The extraction of photofission fragments out of CSC . . . . . . . . . . . 68
3.7 Chapter conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Conclusion 73
Bibliography 75
Publications 81
Appendix 82
vi
Abbreviations
ELI Extreme Light Infrastructure
ELI-NP Extreme Light Infrastructure-Nuclear Physics
RIB Radioactive Ion Beam
ISOL Isotope Separation On-line
IGISOL Ion Guide Isotope Separation On-line
CSC Cryogenic Stopping Cell
LIP Low energy Interaction Point
HIP High energy Interaction Point
DC Direct Current
RF Radio Frequency
HPLS High-Power Laser System
PW Peta-Watt
CBS Compton Backscattering
GBS Gamma Beam System
NRF Nuclear Resonance Fluorescence
SM Symmetric Mode
ASM Asymmetric Mode
KE Kinetic energy
PS Potential Energy Surface
GDR Giant Dipole Resonance
GSI The GSI Helmholtz Centre for Heavy Ion Research
vii
List of Tables
2.1 The values of constants used in the empirical parametrization for 238U
photofission total cross-section. . . . . . . . . . . . . . . . . . . . . . . 32
2.2 The values of constants used in the empirical parametrization for 238U
photofission mass yield. . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.3 The values of constants used in the empirical parametrization for 238U
photofission isobaric charge. . . . . . . . . . . . . . . . . . . . . . . . . 37
3.1 Results for target geometry . . . . . . . . . . . . . . . . . . . . . . . . 62
3.2 Gas density dependence of various parameters . . . . . . . . . . . . . . 68
viii
List of Figures
1.1 Sketch of the ELI-NP machines and experimental areas . . . . . . . . . 5
1.2 Geometry of the inverse Compton scattering of a laser photon on a
relativistic electron. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3 Energy-angle correlation for two gamma beams . . . . . . . . . . . . . 7
1.4 The energy spectra of two gamma beams . . . . . . . . . . . . . . . . . 8
1.5 Scheme of ISOL and In-Flight techniques [13, 14]. . . . . . . . . . . . . 10
1.6 Boiling and melting point of elements . . . . . . . . . . . . . . . . . . . 11
1.7 The principle of IGISOL method [15] . . . . . . . . . . . . . . . . . . . 12
1.8 Gamma source schemetic layout . . . . . . . . . . . . . . . . . . . . . . 14
1.9 Main components of the IGISOL beamline at ELI-NP . . . . . . . . . . 15
1.10 Layout of the IGISOL facility in the ELI-NP laboratory building . . . . 16
1.11 The Top Level Category Diagram of the Geant4 toolkit . . . . . . . . . 18
1.12 The experimental photofission cross sections of 238U . . . . . . . . . . . 27
2.1 The 238U photofission cross sections . . . . . . . . . . . . . . . . . . . . 31
2.2 Measured mass yields for 238U photofission . . . . . . . . . . . . . . . 36
2.3 The most probable charge Zprob . . . . . . . . . . . . . . . . . . . . . . 38
2.4 Comparison of the elemental yields Y (Z) =
∑
Y (A,Z) measured in two
238U photofission experiments . . . . . . . . . . . . . . . . . . . . . . . 39
2.5 Comparison between the mass yields measured in two experiments at GSI 41
ix
2.6 Ratio of independent yields of 238U photofission fragments Y(A,Z) . . . 42
2.7 Ratio of independent yields of 238U photofission fragments Y(A,Z) . . . 43
2.8 Comparison of the isotopic yields . . . . . . . . . . . . . . . . . . . . . 45
2.9 Cross sections of fragments produced by photofission calculated by the
developed parametrization . . . . . . . . . . . . . . . . . . . . . . . . . 46
3.1 The structure of the implemented Geant4 code. . . . . . . . . . . . . . 49
3.2 Kinetic energy versus atomic mass A of photofission fragments produced
with our implementation. . . . . . . . . . . . . . . . . . . . . . . . . . . 51
3.3 Kinetic energy versus emitted angle θ of photofission fragments produced
with our implementation. . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.4 Gamma beam transversal distribution . . . . . . . . . . . . . . . . . . . 55
3.5 View of the yz-plane ... ndl;
new G4PVPlacement(foilTilt, volCenter, logicTarget[iFoil], sName.str(),
logicCell, false, 0, checkOverlaps);
// THE LEFT BACKING FOIL:
sName.str("LeftBackVolume"); sName << iFoil;
logicLeftBack[iFoil] = new G4LogicalVolume(BK_shape, m_back,
sName.str());
sName.str("LeftBack"); sName << iFoil;
volCenter.set(0, b_yShift, zFoil-b_zShift);
new G4PVPlacement(foilTilt, volCenter, logicLeftBack[iFoil],
sName.str(), logicCell, false, 0, checkOverlaps);
// THE RIGHT BACKING FOIL:
sName.str("RightBackVolume"); sName << iFoil;
logicRightBack[iFoil] = new G4LogicalVolume(BK_shape,
m_back, sName.str());
sName.str("RightBack"); sName << iFoil;
volCenter.set(0, -b_yShift, zFoil+b_zShift);
new G4PVPlacement(foilTilt, volCenter, logicRightBack[iFoil],
sName.str(), logicCell, false, 0, checkOverlaps);
// THE UPPER FRAME:
sName.str("UpperFrameVolume"); sName << iFoil;
99
logicUpperFrame[iFoil] = new G4LogicalVolume(FR_small, m_fram,
sName.str());
sName.str("UpperFrame"); sName << iFoil;
volCenter.set(0, f_yShift, zFoil+f_zShift);
new G4PVPlacement(upperFrameRot, volCenter, logicUpperFrame[iFoil],
sName.str(), logicCell, false, 0, checkOverlaps);
// THE LOWER FRAME:
sName.str("LowerFrameVolume"); sName << iFoil;
logicLowerFrame[iFoil] = new G4LogicalVolume(FR_small, m_fram,
sName.str());
sName.str("LowerFrame"); sName << iFoil;
volCenter.set(0, -f_yShift, zFoil-f_zShift);
new G4PVPlacement(lowerFrameRot, volCenter, logicLowerFrame[iFoil],
sName.str(), logicCell, false, 0, checkOverlaps);
// THE RIGHT FRAME:
sName.str("RightFrameVolume"); sName << iFoil;
logicRightFrame[iFoil] = new G4LogicalVolume(FR_large, m_fram,
sName.str());
sName.str("RightFrame"); sName << iFoil;
volCenter.set(-f_xShift, 0, zFoil);
new G4PVPlacement(rightFrameRot, volCenter, logicRightFrame[iFoil],
sName.str(), logicCell, false, 0, checkOverlaps);
// THE LEFT FRAME:
sName.str("LeftFrameVolume"); sName << iFoil;
logicLeftFrame[iFoil] = new G4LogicalVolume(FR_large, m_fram,
sName.str());
sName.str("LeftFrame"); sName << iFoil;
volCenter.set(f_xShift, 0, zFoil);
new G4PVPlacement(leftFrameRot, volCenter, logicLeftFrame[iFoil],
sName.str(), logicCell, false, 0, checkOverlaps);
100
}
G4Tubs* ROD_shape = new G4Tubs("RodTube", 0.*mm,
0.5*rodDiam, 0.5*cellLength, 0.*deg, 360.*deg);
G4LogicalVolume *logicRod[4];
G4double r_angle = atan((foilThick+2.*backThick)/foilLength);
r_angle *= deg;
G4double r_Shift = 0.5*sqrt(pow(foilLength,2.)+pow(foilThick+
2.*backThick,2.))*sin(foilAngle+r_angle)+0.5*sqrt(pow(frameWidth,2.)+
pow(frameLength-frameDepth,2.));
G4double x_sign[4] = {+1.,-1.,+1.,-1.};
G4double y_sign[4] = {+1.,+1.,-1.,-1.};
for(G4int iRod=0; iRod<4; iRod++) {
sName.str("RodVolume"); sName << iRod;
logicRod[iRod] = new G4LogicalVolume(ROD_shape, m_rod,
sName.str());
sName.str("Rod"); sName << iRod;
volCenter.set((r_Shift+1.1*rodDiam/2.)*x_sign[iRod],
(r_Shift+1.1*rodDiam/2.)*y_sign[iRod], 0.);
new G4PVPlacement(0, volCenter, logicRod[iRod], sName.str(),
logicCell, false, 0, checkOverlaps);}
G4double foilDensity = m_targ->GetDensity();
G4String foilName = m_targ->GetName();
G4double totThick = foilNumber*foilThick/sin(foilAngle);
G4double totMass = foilDensity*totThick*foilSize*foilSize;
}
GammaFissionCrossSection:
#ifndef GammaFissionCrossSection_h
#define GammaFissionCrossSection_h 1
#include "G4VCrossSectionDataSet.hh"
101
#include "G4ParticleDefinition.hh"
#include "G4DynamicParticle.hh"
#include "G4SystemOfUnits.hh"
#include "G4Material.hh"
class GammaFissionCrossSection :
public G4VCrossSectionDataSet {
public:
GammaFissionCrossSection();
virtual ~GammaFissionCrossSection();
static const char* Default_Name()
{return "GammaFissionXS";}
virtual void CrossSectionDescription(std::ostream&) const;
virtual G4bool IsIsoApplicable(const G4DynamicParticle*,
G4int Z, G4int A, const G4Element* elm=0,
const G4Material* mat=0);
virtual G4double GetIsoCrossSection(
const G4DynamicParticle*,
G4int Z, G4int A, const G4Isotope* iso=0,
const G4Element* elm=0, const G4Material* mat=0);
};
#endif
GammaFissionDataModel:
#ifndef GammaFissionDataModel_h
#define GammaFissionDataModel_h 1
#include "globals.hh"
#include "G4HadronicInteraction.hh"
#include "G4CascadeInterface.hh"
#include "G4HadProjectile.hh"
#include "G4Nucleus.hh"
#include "G4DynamicParticle.hh"
102
#include "G4PhysicsTable.hh"
#include "G4ParticleTable.hh"
#include "G4IonTable.hh"
#include "G4SystemOfUnits.hh"
#include "G4ParticleDefinition.hh"
#include "G4LorentzVector.hh"
#include "G4MTRandFlat.hh"
#include "G4MTRandGauss.hh"
#include "G4MTRandGamma.hh"
#include 
#include 
// #include "TH2D.h"
#include "TF2.h"
class GammaFissionDataModel :
public G4HadronicInteraction {
public:
GammaFissionDataModel(CLHEP::HepRandomEngine*);
virtual ~GammaFissionDataModel();
virtual G4HadFinalState* ApplyYourself
(const G4HadProjectile& aTrack, G4Nucleus& targetNucleus);
private:
GammaFissionDataModel & operator=
(const GammaFissionDataModel &right);
GammaFissionDataModel(const GammaFissionDataModel&);
CLHEP::HepRandomEngine* randGen;
G4MTRandFlat* flatRand;
G4MTRandGauss* gaussRand;
G4MTRandGamma* gammaRand;
G4IonTable* theTableOfIons;
G4double MeanTKE, SigmaTKE;
103
G4double MeanENeutrons, LambdaENeutrons;
G4double MeanEPhotons, LambdaEPhotons;
G4double nMass; // the neutron mass
TF2* fFissFrag;
G4double GetFissTheta(G4double GammaEnergy);
G4double SolveThetaCDF();
G4bool IsValidTarget(G4int Z, G4int A);
// void FillFragmentDistribution();
};
#endif
GammaFissionProcess:
#ifndef GammaFissionProcess_h
#define GammaFissionProcess_h 1
#include "G4HadronInelasticProcess.hh"
#include "G4PhotoNuclearCrossSection.hh"
#include "GammaFissionCrossSection.hh"
// class for gamma induced fission
class GammaFissionProcess :
public G4HadronInelasticProcess {
public:
GammaFissionProcess(const G4String&
processName ="GammaFission"):
G4HadronInelasticProcess(processName,
G4Gamma::Gamma()) {
G4CrossSectionDataStore* theStore =
GetCrossSectionDataStore();
theStore->AddDataSet(new G4PhotoNuclearCrossSection());
theStore->AddDataSet(new GammaFissionCrossSection());
}
104
virtual ~GammaFissionProcess() {}
virtual void ProcessDescription(std::ostream& outFile)
const {
}
private:
GammaFissionCrossSection* theCrossSection;
};
#endif
PhysicsLists:
#ifndef PhysicsList_h
#define PhysicsList_h 1
#include "G4VModularPhysicsList.hh"
#include "Randomize.hh"
#include "globals.hh"
#include "RunInput.hh"
// Physics list requires the user to define:
// - the particles to be used in the simulation,
// - all the physics processes to be simulated.
class PhysicsList : public G4VModularPhysicsList {
public:
PhysicsList(RunInput*, CLHEP::HepRandomEngine*);
virtual ~PhysicsList();
virtual void ConstructParticle();
virtual void ConstructProcess();
virtual void SetCuts();
private:
RunInput* runInput;
CLHEP::HepRandomEngine* randGen;
};
105
#endif
PrimaryGenerator:
#ifndef PrimaryGeneratorAction_h
#define PrimaryGeneratorAction_h 1
#include "G4VUserPrimaryGeneratorAction.hh"
#include "G4ParticleGun.hh"
#include "G4Event.hh"
#include "G4ParticleTable.hh"
#include "G4ParticleDefinition.hh"
#include "G4SystemOfUnits.hh"
#include "G4MTRandFlat.hh"
#include "RunInput.hh"
#include "Source.hh"
#include "EmittedParticle.hh"
#include 
#include 
using namespace std;
class G4Event;
class PrimaryGeneratorAction :
public G4VUserPrimaryGeneratorAction {
public:
PrimaryGeneratorAction(RunInput*, CLHEP::HepRandomEngine*);
virtual ~PrimaryGeneratorAction();
virtual void GeneratePrimaries(G4Event*);
G4ParticleGun* GetParticleGun() {return particleGun;};
private:
ifstream dataFile;
G4double* fIntegral;
G4double* EnergyLow;
G4double* ThetaLow;
106
G4int sNumBins;
G4double EnergyBW, ThetaBW;
G4double source_position;
G4ParticleGun* particleGun;
CLHEP::HepRandomEngine* randGen;
G4MTRandFlat* flatRand;
RunInput* runInput;
G4int search(G4int, const G4double*, G4double);
};
#endif
RunAction:
#ifndef RunAction_h
#define RunAction_h 1
#include "G4UserRunAction.hh"
#include "globals.hh"
#include "G4Run.hh"
#include "G4RunManager.hh"
#include "G4UnitsTable.hh"
#include "G4SystemOfUnits.hh"
#include "Analysis.hh"
/// Run action class
class RunAction : public G4UserRunAction {
public:
RunAction();
virtual ~RunAction();
virtual void BeginOfRunAction(const G4Run*);
virtual void EndOfRunAction(const G4Run*);
private:
G4AnalysisManager* analysisManager;
};
107
#endif
EventActon:
#ifndef EventAction_h
#define EventAction_h 1
#include "G4UserEventAction.hh"
#include "globals.hh"
#include "RunAction.hh"
#include 
class EventAction : public G4UserEventAction {
public:
EventAction(RunAction*);
virtual ~EventAction();
virtual void BeginOfEventAction(const G4Event* event);
virtual void EndOfEventAction(const G4Event* event);
// track functions:
void AddTrkKin(G4double v1, G4double v2)
{ fTrkEne.push_back(v1);
fTrkThe.push_back(v2); }
void AddTrkLabel(G4int v1, G4int v2)
{ fParent.push_back(v1); fTrack.push_back(v2); }
void AddTrkProc(G4int v1) { fProcT.push_back(v1); }
void AddParticle(G4int v1, G4int v2, G4int v3)
{ fPart.push_back(v1); fQ.push_back(v2);
fAtoM.push_back(v3); }
// step functions:
void AddHitKin(G4double v1) { fHitEne.push_back(v1); }
void AddHitLabel(G4int v1) { fStep.push_back(v1); }
void AddHitProc(G4int v1) { fProcP.push_back(v1); }
void AddPos(G4double v1, G4double v2, G4double v3)
108
{ fHitX.push_back(v1); fHitY.push_back(v2);
fHitZ.push_back(v3); }
void AddDetector(G4int v1) { fDet.push_back(v1); }
void AddStepEL(G4double v1, G4double v2)
{ fEDep.push_back(v1); fSLen.push_back(v2); }
void AddStepQ(G4double v1) { fsq.push_back(v1); }
private:
RunAction* fRunAction;
// track variables:
std::vector fTrkEne;
std::vector fTrkThe;
std::vector fParent;
std::vector fTrack;
std::vector fProcT;
std::vector fPart;
std::vector fQ;
std::vector fAtoM;
// step variables:
std::vector fHitEne;
std::vector fStep;
std::vector fProcP;
std::vector fHitX;
std::vector fHitY;
std::vector fHitZ;
std::vector fDet;
std::vector fEDep;
std::vector fSLen;
std::vector fsq;
void Print();
};
109
#endif
SteppingAction:
#ifndef SteppingAction_h
#define SteppingAction_h 1
#include "G4UserSteppingAction.hh"
#include "EventAction.hh"
#include 
/// Stepping action class.
/// In UserSteppingAction() we
//collect the parameters to be updated in EventAction.
class SteppingAction : public G4UserSteppingAction {
public:
SteppingAction(EventAction* eventAction);
virtual ~SteppingAction();
virtual void UserSteppingAction(const G4Step* step);
private:
EventAction* fEventAction;
G4String fProcList[18];
std::vector fPartList;
G4int GetProcessID(const G4StepPoint* postStepPt);
G4int GetProcessID(const G4Track* track);
G4int GetParticleID(const G4Track* track);
};
#endif

File đính kèm:

  • pdfluan_an_nghien_cuu_tham_so_hoa_tiet_dien_quang_phan_hach_cua.pdf
  • docx03_Những đóng góp mới của luận án_OK.docx
  • pdfBản trích yếu NCS Lê Tuấn Anh.pdf
  • pdfĐóng góp mới của NCS Lê Tuấn Anh.pdf
  • pdfĐóng góp mới tiếng anh tiếng việt NCS Lê Tuấn Anh.pdf
  • pdfLeTuanAnh_TTLA_merged.pdf
  • pdfQĐ cấp HV của Lê Tuấn Anh.pdf
  • pdfThesisTAnhTomtaTV_Merge.pdf
  • docTrích yếu luận án.doc