From d903cb15cd8cc22642d34814d838cfbcc65b8267 Mon Sep 17 00:00:00 2001 From: Morfouace <pierre.morfouace@gmail.com> Date: Tue, 13 Oct 2020 16:56:24 +0200 Subject: [PATCH] Adding a fission decay generator based on a simplified GEF code. --- .../FissionChamber/TFissionChamberPhysics.cxx | 20 +++-- .../FissionChamber/TFissionChamberPhysics.h | 4 +- NPLib/Physics/GEF.cxx | 14 +-- NPLib/Physics/GEF.h | 34 ++++++-- NPLib/Physics/NPFissionDecay.cxx | 28 +++--- NPLib/Physics/NPFissionDecay.h | 4 +- NPSimulation/Detectors/Scone/Scone.cc | 2 +- NPSimulation/Process/FissionDecay.cc | 42 +++++---- Projects/ChiNu/Analysis.cxx | 4 +- Projects/PISTA/PISTA.detector | 86 +++++++++++++++++++ Projects/Scone/Analysis.cxx | 2 - Projects/Scone/Scone.detector | 17 ++-- 12 files changed, 180 insertions(+), 77 deletions(-) diff --git a/NPLib/Detectors/FissionChamber/TFissionChamberPhysics.cxx b/NPLib/Detectors/FissionChamber/TFissionChamberPhysics.cxx index 889594784..cf42247c4 100644 --- a/NPLib/Detectors/FissionChamber/TFissionChamberPhysics.cxx +++ b/NPLib/Detectors/FissionChamber/TFissionChamberPhysics.cxx @@ -55,7 +55,7 @@ TFissionChamberPhysics::TFissionChamberPhysics() /////////////////////////////////////////////////////////////////////////// /// A usefull method to bundle all operation to add a detector -void TFissionChamberPhysics::AddDetector(TVector3 , string ){ +void TFissionChamberPhysics::AddDetector(TVector3 ){ // In That simple case nothing is done // Typically for more complex detector one would calculate the relevant // positions (stripped silicon) or angles (gamma array) @@ -63,11 +63,11 @@ void TFissionChamberPhysics::AddDetector(TVector3 , string ){ } /////////////////////////////////////////////////////////////////////////// -void TFissionChamberPhysics::AddDetector(double R, double Theta, double Phi, string shape){ +void TFissionChamberPhysics::AddDetector(double R, double Theta, double Phi){ // Compute the TVector3 corresponding TVector3 Pos(R*sin(Theta)*cos(Phi),R*sin(Theta)*sin(Phi),R*cos(Theta)); // Call the cartesian method - AddDetector(Pos,shape); + AddDetector(Pos); } /////////////////////////////////////////////////////////////////////////// @@ -207,8 +207,8 @@ void TFissionChamberPhysics::ReadConfiguration(NPL::InputParser parser) { if(NPOptionManager::getInstance()->GetVerboseLevel()) cout << "//// " << blocks.size() << " detectors found " << endl; - vector<string> cart = {"POS","Shape"}; - vector<string> sphe = {"R","Theta","Phi","Shape"}; + vector<string> cart = {"POS","GasMaterial","Pressure"}; + vector<string> sphe = {"R","Theta","Phi","GasMaterial","Pressure"}; for(unsigned int i = 0 ; i < blocks.size() ; i++){ if(blocks[i]->HasTokenList(cart)){ @@ -216,8 +216,9 @@ void TFissionChamberPhysics::ReadConfiguration(NPL::InputParser parser) { cout << endl << "//// FissionChamber " << i+1 << endl; TVector3 Pos = blocks[i]->GetTVector3("POS","mm"); - string Shape = blocks[i]->GetString("Shape"); - AddDetector(Pos,Shape); + string gas = blocks[i]->GetString("GasMaterial"); + double pressure = blocks[i]->GetDouble("Pressure","bar"); + AddDetector(Pos); } else if(blocks[i]->HasTokenList(sphe)){ if(NPOptionManager::getInstance()->GetVerboseLevel()) @@ -225,8 +226,9 @@ void TFissionChamberPhysics::ReadConfiguration(NPL::InputParser parser) { double R = blocks[i]->GetDouble("R","mm"); double Theta = blocks[i]->GetDouble("Theta","deg"); double Phi = blocks[i]->GetDouble("Phi","deg"); - string Shape = blocks[i]->GetString("Shape"); - AddDetector(R,Theta,Phi,Shape); + string gas = blocks[i]->GetString("GasMaterial"); + double pressure = blocks[i]->GetDouble("Pressure","bar"); + AddDetector(R,Theta,Phi); } else{ cout << "ERROR: check your input file formatting " << endl; diff --git a/NPLib/Detectors/FissionChamber/TFissionChamberPhysics.h b/NPLib/Detectors/FissionChamber/TFissionChamberPhysics.h index 7c07cc1a9..847f7d731 100644 --- a/NPLib/Detectors/FissionChamber/TFissionChamberPhysics.h +++ b/NPLib/Detectors/FissionChamber/TFissionChamberPhysics.h @@ -67,8 +67,8 @@ class TFissionChamberPhysics : public TObject, public NPL::VDetector { vector<double> Time; /// A usefull method to bundle all operation to add a detector - void AddDetector(TVector3 POS, string shape); - void AddDetector(double R, double Theta, double Phi, string shape); + void AddDetector(TVector3 POS); + void AddDetector(double R, double Theta, double Phi); ////////////////////////////////////////////////////////////// // methods inherited from the VDetector ABC class diff --git a/NPLib/Physics/GEF.cxx b/NPLib/Physics/GEF.cxx index 81e57315e..341bb9aef 100644 --- a/NPLib/Physics/GEF.cxx +++ b/NPLib/Physics/GEF.cxx @@ -1614,17 +1614,11 @@ void GEF::Eva(int Ilh, float Z_CN, float A_CN, float E_INIT, float T, float J_fr // Shell effects excluded // SN = LDMass(Zi,Ai-1.,0.0) + LyPair(Zi,Ai-1.) - (LDMass(Zi,Ai,0.0) + LyPair(Zi,Ai)) ; // SNeff = LDMass(Zi,Ai-1.,0.0) - LDMass(Zi,Ai,0.0) ; - - Zf = Zi; - Af = Ai; - Ef = Ei; - while(Ei-SN>E_MIN) { // Treat gamma competition Tm = U_Temp(Zi,Ai,Ei,1,1,Tscale,Econd); // emitting nucleus Td = U_Temp(Zi,Ai-1,Ei-SNeff,1,1,Tscale,Econd); - if(Ilh > 0) // Emission from fragments { Gamma_g = 0.624 * pow(Ai,1.6) * pow(Tm,5); // in meV (Ignatyuk, Bologna) @@ -1652,9 +1646,7 @@ void GEF::Eva(int Ilh, float Z_CN, float A_CN, float E_INIT, float T, float J_fr } // Reduces the even-odd effect in neutron number // due to low level density below the pairing gap - - Pgamma = Gamma_g / (Gamma_g + Gamma_n); - + Pgamma = Gamma_g / (Gamma_g + Gamma_n); if(rn->Rndm()<Pgamma) //gamma will be emitted { In_gamma = In_gamma + 1; @@ -4207,7 +4199,7 @@ void GEF::N_Saddle_Scission(void) J_Frag_light = 0; // Eva(0,I_Z_light_sad,I_A_light_sad,E_intr_light,TlightFF,J_Frag_light,R_Z_light_sci, // R_A_light_sci,E_Final_Light,Array_E_n1_ss,Array_Tn,Array_Eg0_light); - Eva(0,I_Z_light_sad,I_A_light_sad,E_intr_light,TlightFF,J_Frag_light,R_Z_light_sci, + Eva(1,I_Z_light_sad,I_A_light_sad,E_intr_light,TlightFF,J_Frag_light,R_Z_light_sci, R_A_light_sci,E_Final_Light,Array_E_n1_frag1,Array_Tn,Array_Eg0_light); for(int i = 1;i<= 50;i++) @@ -4232,7 +4224,7 @@ void GEF::N_Saddle_Scission(void) J_Frag_heavy = 0; // Eva(0,I_Z_heavy_sad,I_A_heavy_sad,E_intr_heavy,TheavyFF,J_Frag_heavy,R_Z_heavy_sci, // R_A_heavy_sci,E_Final_Heavy,Array_E_n2_ss,Array_Tn,Array_Eg0_heavy); - Eva(0,I_Z_heavy_sad,I_A_heavy_sad,E_intr_heavy,TheavyFF,J_Frag_heavy,R_Z_heavy_sci, + Eva(1,I_Z_heavy_sad,I_A_heavy_sad,E_intr_heavy,TheavyFF,J_Frag_heavy,R_Z_heavy_sci, R_A_heavy_sci,E_Final_Heavy,Array_E_n2_frag2,Array_Tn,Array_Eg0_heavy); for(int i = 1;i<=50;i++) diff --git a/NPLib/Physics/GEF.h b/NPLib/Physics/GEF.h index 35add9b01..a6f644e46 100644 --- a/NPLib/Physics/GEF.h +++ b/NPLib/Physics/GEF.h @@ -1,6 +1,24 @@ #ifndef GEF_CLASS #define GEF_CLASS - +/*********************************************************************** +* * +* Original Author : Diego Ramos -> diego.ramos@ganil.fr * +* Adapted for NPTool : Pierre Morfouace -> pierre.morfouace2@cea.fr * +* Creation Date : 25/09/2020 * +* * +*----------------------------------------------------------------------* +* * +* Description: * +* This class generates fission fragments based on a simplified * +* model of the GEF code. * +* This is not the full GEF code. User should use it with caution. * +* * +*----------------------------------------------------------------------* +* Comment: * +* * +* * +************************************************************************/ +// C++ header #include <iostream> #include <iomanip> #include <sstream> @@ -17,11 +35,11 @@ #include <ctime> #include <fcntl.h> #include <unistd.h> - #include <sys/stat.h> #include <time.h> #include <typeinfo> +// ROOT header #include <TROOT.h> #include <TFile.h> #include <TDirectory.h> @@ -33,15 +51,11 @@ #include <TKey.h> #include <TRandom3.h> -using namespace std; - -//#endif - -//#define GEF_SIMPLE - -// NPTool headers +// NPTool header #include "NPParticle.h" +using namespace std; + class GEF { public: @@ -65,6 +79,8 @@ public: float* GetNeutronEnergyFrag1() {return Array_E_n1_frag1;} float* GetNeutronEnergyFrag2() {return Array_E_n2_frag2;} + float* GetGammaEnergyFrag1() {return Array_Eg0_light;} + float* GetGammaEnergyFrag2() {return Array_Eg0_heavy;} float GetTKE() {return TKE;} float GetKE1() {return Ekinlight_sci;} float GetKE2() {return Ekinheavy_sci;} diff --git a/NPLib/Physics/NPFissionDecay.cxx b/NPLib/Physics/NPFissionDecay.cxx index f2563bfce..10a2a7d8c 100644 --- a/NPLib/Physics/NPFissionDecay.cxx +++ b/NPLib/Physics/NPFissionDecay.cxx @@ -44,8 +44,11 @@ NPL::FissionDecay::FissionDecay(std::string compound, std::string fission_model) void NPL::FissionDecay::ReadConfiguration(NPL::InputParser parser){ vector<NPL::InputBlock*> blocks = parser.GetAllBlocksWithToken("FissionDecay"); - if(blocks.size()>0 && NPOptionManager::getInstance()->GetVerboseLevel()) + if(blocks.size()>0 && NPOptionManager::getInstance()->GetVerboseLevel()){ cout << endl << "\033[1;35m//// Fission decay found" << std::endl; + } + if(blocks.size()==0) HasFissionToken=0; + else HasFissionToken=1; std::vector<std::string> token = {"CompoundNucleus","FissionModel","Shoot_FF","Shoot_neutron","Shoot_gamma"}; @@ -133,12 +136,6 @@ bool NPL::FissionDecay::GenerateEvent(string CompoundName, double MEx,double MEK double Phil = m_FissionModel->GetPhffl(); double Phih = m_FissionModel->GetPhffh(); - /*cout << endl; - cout << "A-> " << Al << " / " << Ah << endl; - cout << "Z-> " << Zl << " / " << Zh << endl; - cout << "Phi-> " << Phil << " / " << Phih << endl; - cout << "Theta-> " << Thetal << " / " << Thetah << endl; - cout << "KE-> " << KEl << " / " << KEh << endl;*/ TVector3 Momentuml = Pl * TVector3(sin(Thetal)*cos(Phil), sin(Thetal)*sin(Phil), cos(Thetal)); @@ -158,13 +155,20 @@ bool NPL::FissionDecay::GenerateEvent(string CompoundName, double MEx,double MEK KE1 = m_FissionModel->GetKE1(); KE2 = m_FissionModel->GetKE2(); - // Neutron emission + // Neutron and gamma emission float* En1; + float* Eg1; En1 = m_FissionModel->GetNeutronEnergyFrag1(); - /*cout << "----- Neutron energy: " << endl; - for(int i=0; i<51; i++) { - cout << "En= " << En1[i] << endl; - }*/ + //cout << "----- Neutron energy: " << endl; + //for(int i=0; i<51; i++) { + // cout << "En= " << En1[i] << endl; + //} + + Eg1 = m_FissionModel->GetGammaEnergyFrag1(); + //cout << "----- Gamma energy: " << endl; + //for(int i=0; i<101; i++){ + // cout << "Eg= " << Eg1[i] << endl; + //} } } return worked; diff --git a/NPLib/Physics/NPFissionDecay.h b/NPLib/Physics/NPFissionDecay.h index 48e28ec7f..e11d1a901 100644 --- a/NPLib/Physics/NPFissionDecay.h +++ b/NPLib/Physics/NPFissionDecay.h @@ -46,7 +46,7 @@ namespace NPL{ public: void ReadConfiguration(std::string Path); void ReadConfiguration(NPL::InputParser parser); - + int GetFissionToken() {return HasFissionToken;} private: GEF* m_FissionModel; std::string m_FissionModelName; @@ -56,7 +56,7 @@ namespace NPL{ std::vector<std::string> m_FissionFragmentName; std::vector<NPL::Particle> m_FissionFragment; std::vector<double> m_FissionFragmentMasses; - + int HasFissionToken; bool m_shoot_FF; bool m_shoot_neutron; bool m_shoot_gamma; diff --git a/NPSimulation/Detectors/Scone/Scone.cc b/NPSimulation/Detectors/Scone/Scone.cc index e3651c99e..6e57493e8 100644 --- a/NPSimulation/Detectors/Scone/Scone.cc +++ b/NPSimulation/Detectors/Scone/Scone.cc @@ -591,7 +591,7 @@ void Scone::ReadSensitive(const G4Event* ){ m_Event->SetCapture(2); m_Event->SetCaptureTime(GdCaptureTime); } - //else m_Event->SetCapture(0); + else m_Event->SetCapture(0); GdProcess_scorer->clear(); /////////// diff --git a/NPSimulation/Process/FissionDecay.cc b/NPSimulation/Process/FissionDecay.cc index a3c5e2178..15b7ed586 100644 --- a/NPSimulation/Process/FissionDecay.cc +++ b/NPSimulation/Process/FissionDecay.cc @@ -43,6 +43,10 @@ FissionDecay::FissionDecay(G4String modelName,G4Region* envelope) : ReadConfiguration(); m_PreviousEnergy=0 ; m_PreviousLength=0 ; + m_FissionConditions = new TFissionConditions(); + //AttachFissionConditions(); + //if(!RootOutput::getInstance()->GetTree()->FindBranch("FissionConditions")) + // RootOutput::getInstance()->GetTree()->Branch("FissionConditions", "TFissionConditions", &m_FissionConditions); } @@ -65,22 +69,22 @@ void FissionDecay::AttachFissionConditions(){ void FissionDecay::ReadConfiguration(){ NPL::InputParser input(NPOptionManager::getInstance()->GetReactionFile()); m_FissionDecay.ReadConfiguration(input); - std::string Mother = m_FissionDecay.GetCompoundName(); - - m_CompoundParticle = NPL::Particle(Mother); - - m_CompoundName = NPL::ChangeNameToG4Standard(Mother,true); - m_FissionConditions = new TFissionConditions(); - AttachFissionConditions(); - if(!RootOutput::getInstance()->GetTree()->FindBranch("FissionConditions")) - RootOutput::getInstance()->GetTree()->Branch("FissionConditions", "TFissionConditions", &m_FissionConditions); + if(m_FissionDecay.GetFissionToken()>0){ + std::string Mother = m_FissionDecay.GetCompoundName(); + m_CompoundParticle = NPL::Particle(Mother); + m_CompoundName = NPL::ChangeNameToG4Standard(Mother,true); + AttachFissionConditions(); + if(!RootOutput::getInstance()->GetTree()->FindBranch("FissionConditions")) + RootOutput::getInstance()->GetTree()->Branch("FissionConditions", "TFissionConditions", &m_FissionConditions); + } } //////////////////////////////////////////////////////////////////////////////// G4bool FissionDecay::IsApplicable( const G4ParticleDefinition& particleType) { + m_CurrentName = particleType.GetParticleName(); // Extract Ex from name if(m_CurrentName.find("[")!=std::string::npos) @@ -99,7 +103,7 @@ G4bool FissionDecay::IsApplicable( const G4ParticleDefinition& particleType) { //////////////////////////////////////////////////////////////////////////////// G4bool FissionDecay::ModelTrigger(const G4FastTrack& fastTrack) { bool Trigger = true; - + m_FissionConditions->Clear(); m_PreviousEnergy=fastTrack.GetPrimaryTrack()->GetKineticEnergy(); @@ -146,7 +150,7 @@ void FissionDecay::DoIt(const G4FastTrack& fastTrack,G4FastStep& fastStep){ pdirection.x(),pdirection.y(),pdirection.z(), FissionFragment, Ex,DEK,DPx,DPy,DPz, TKE, KE1, KE2); - + ///////////////////////////////////////////////// // Fillion the attached Fission condition Tree // ///////////////////////////////////////////////// @@ -166,7 +170,7 @@ void FissionDecay::DoIt(const G4FastTrack& fastTrack,G4FastStep& fastStep){ if(size == 0) return; - + // Get Neutron Multiplicity int Zsum = FissionFragment[0].GetZ() + FissionFragment[1].GetZ(); int Asum = FissionFragment[0].GetA() + FissionFragment[1].GetA(); @@ -184,7 +188,7 @@ void FissionDecay::DoIt(const G4FastTrack& fastTrack,G4FastStep& fastStep){ Momentum=Momentum.unit(); double Brho = FissionFragment[i].GetBrho(); - + m_FissionConditions->SetFragmentZ(FFZ); m_FissionConditions->SetFragmentA(FFA); m_FissionConditions->SetFragmentKineticEnergy(DEK[i]); @@ -199,10 +203,10 @@ void FissionDecay::DoIt(const G4FastTrack& fastTrack,G4FastStep& fastStep){ if(FFZ==0){ if(FFA==1) FissionFragmentDef=G4ParticleTable::GetParticleTable()->FindParticle("neutron"); - + else if(FFA==0){ FissionFragmentDef=G4ParticleTable::GetParticleTable()->FindParticle("gamma"); - } + } } // proton @@ -212,11 +216,11 @@ void FissionDecay::DoIt(const G4FastTrack& fastTrack,G4FastStep& fastStep){ else FissionFragmentDef=G4ParticleTable::GetParticleTable()->GetIonTable()->GetIon(FFZ, FFA, Ex[i]); - + G4DynamicParticle DynamicFissionFragment(FissionFragmentDef,Momentum,DEK[i]); fastStep.CreateSecondaryTrack(DynamicFissionFragment, localPosition, time); } - + if(size){ // Set the end of the step conditions fastStep.SetPrimaryTrackFinalKineticEnergyAndDirection(0,pdirection); @@ -225,6 +229,6 @@ void FissionDecay::DoIt(const G4FastTrack& fastTrack,G4FastStep& fastStep){ fastStep.SetPrimaryTrackFinalTime (time); fastStep.KillPrimaryTrack(); fastStep.SetPrimaryTrackPathLength(0.0); - } - + } + } diff --git a/Projects/ChiNu/Analysis.cxx b/Projects/ChiNu/Analysis.cxx index 85e60dd97..a5c066962 100644 --- a/Projects/ChiNu/Analysis.cxx +++ b/Projects/ChiNu/Analysis.cxx @@ -55,7 +55,8 @@ void Analysis::TreatEvent(){ Einit = InitialConditions->GetKineticEnergy(0); double init_ThetaLab = ReactionConditions->GetTheta(0)*deg; double init_BeamEnergy = ReactionConditions->GetBeamEnergy(); - neutron->SetKineticEnergy(init_BeamEnergy); + //neutron->SetKineticEnergy(init_BeamEnergy); + neutron->SetKineticEnergy(Einit); double beam_TOF = neutron->GetTimeOfFlight(); double Xtarget = InitialConditions->GetIncidentPositionX(); @@ -71,7 +72,6 @@ void Analysis::TreatEvent(){ TVector3 HitPos = DetPos-TargetPos; //R= HitPos.Mag()*1e-3; R= Rdet*mm; - Distance.push_back(R); Det.push_back(m_ChiNu->DetectorNumber[i]); T.push_back(m_ChiNu->Time[i]); diff --git a/Projects/PISTA/PISTA.detector b/Projects/PISTA/PISTA.detector index 28e3a6fb0..234c8fb79 100644 --- a/Projects/PISTA/PISTA.detector +++ b/Projects/PISTA/PISTA.detector @@ -49,3 +49,89 @@ PISTA PHI= 0 deg %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Vamos Configuration +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%Vamos +% R= 0.3 m +% Theta= 0 deg +% +%Vamos DC +% Z= 60 mm +% Gas= iC4H10 +% Pressure= 0.01 bar +% Temperature= 295 kelvin +% +%Vamos DC +% Z= 200 mm +% Gas= iC4H10 +% Pressure= 0.01 bar +% Temperature= 295 kelvin +% +%Vamos BeamCatcher +% Material= BC400 +% Width= 30 mm +% Length= 80 mm +% Thickness= 30 mm +% Pos= 0 0 600 mm +% +%Vamos MWPPAC +% Z= 750 mm +% Gas= iC4H10 +% Pressure= 0.01 bar +% Temperature= 295 kelvin +% +%Vamos DC +% Z= 940 mm +% Gas= iC4H10 +% Pressure= 0.01 bar +% Temperature= 295 kelvin +% +%Vamos DC +% Z= 1060 mm +% Gas= iC4H10 +% Pressure= 0.01 bar +% Temperature= 295 kelvin +% +%Vamos IC +% Z= 1200 mm +% Thickness= 50 mm +% Gas= CF4 +% Pressure= 0.2 bar +% Temperature= 295 kelvin +% +%Vamos IC +% Z= 1250 mm +% Thickness= 50 mm +% Gas= CF4 +% Pressure= 0.2 bar +% Temperature= 295 kelvin +% +%Vamos IC +% Z= 1300 mm +% Thickness= 50 mm +% Gas= CF4 +% Pressure= 0.2 bar +% Temperature= 295 kelvin +% +%Vamos IC +% Z= 1375 mm +% Thickness= 100 mm +% Gas= CF4 +% Pressure= 0.2 bar +% Temperature= 295 kelvin +% +%Vamos IC +% Z= 1525 mm +% Thickness= 200 mm +% Gas= CF4 +% Pressure= 0.2 bar +% Temperature= 295 kelvin +% +%Vamos IC +% Z= 1725 mm +% Thickness= 200 mm +% Gas= CF4 +% Pressure= 0.2 bar +% Temperature= 295 kelvin +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% diff --git a/Projects/Scone/Analysis.cxx b/Projects/Scone/Analysis.cxx index d73075f58..4c3fc225a 100644 --- a/Projects/Scone/Analysis.cxx +++ b/Projects/Scone/Analysis.cxx @@ -58,7 +58,6 @@ void Analysis::Init(){ //////////////////////////////////////////////////////////////////////////////// void Analysis::TreatEvent(){ ReInitValue(); - if(InitialConditions->GetParticleMultiplicity()>0){ E_init = InitialConditions->GetKineticEnergy(0); } @@ -70,7 +69,6 @@ void Analysis::TreatEvent(){ new_energy = true; } - if(new_energy == true){ if(m_DetectedNeutron!=0) vDetectedNeutron.push_back(m_DetectedNeutron); m_DetectedNeutron = 0; diff --git a/Projects/Scone/Scone.detector b/Projects/Scone/Scone.detector index 1cd3e5c14..1b3c5f3f5 100644 --- a/Projects/Scone/Scone.detector +++ b/Projects/Scone/Scone.detector @@ -1,16 +1,17 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%Target -% THICKNESS= 10 micrometer -% RADIUS= 10 mm -% MATERIAL= CD2 -% ANGLE= 0 deg -% X= 0 mm -% Y= 0 mm -% Z= 0 mm +Target + THICKNESS= 0.74 micrometer + RADIUS= 1.5 cm + MATERIAL= 238U + ANGLE= 0 deg + X= 0 mm + Y= 0 mm + Z= 0 mm %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Scone POS= 0 0 0 mm Ring1= 1 Ring2= 1 + FissionChamber= 0 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -- GitLab