Message: Physics List for Fission fragments as source particles in a gas Not Logged In (login)
 Next-in-Thread Next-in-Thread
 Next-in-Forum Next-in-Forum

Question Physics List for Fission fragments as source particles in a gas 

Forum: Physics List
Date: 29 Jul, 2015
From: Francesca <Francesca>

Dear all,

   I am not a C++ expert and I am trying to customize a Physics list 
optimized for a simulation where the primary particles are 
fission fragments. The goal is scoring the energy deposited by the FFs in 
a gas, and finding out the number of FFs that do not leave a Pu target. 
By making some copy & paste (withouth really understanding what I am doing...) I get the electromagnetic physics initialized by activating "Livermore", but when it comes to the hadronic pyisics list, I have no idea of how to proceed...
I can Initiate HadronInelasticQBBC, but ... 

1. does QBBC suit to this kind of simulation?

2. Judging from its name, HadronInelasticQBBC is only for Inelastic processes. Actually that's what I need, but -accademically speaking- in case I want to add also ElasticProcesses, how should I proceed?

Could anyone help me, please?

Thanks, regards,

Francesca

---------------- My PhysicsList.hh looks like:

#ifndef PHYSICSLIST_HH
#define PHYSICSLIST_HH 1

#include "G4VModularPhysicsList.hh"
#include "globals.hh"
#include "G4EmConfigurator.hh"

class G4VPhysicsConstructor;

class PhysicsList: public G4VModularPhysicsList { public:

  PhysicsList();

  virtual ~PhysicsList();

  void ConstructParticle();

  void ConstructProcess();

  void SetCuts();

private:
  G4EmConfigurator em_config;

  G4VPhysicsConstructor*               emPhysicsList;
  G4VPhysicsConstructor*               decPhysicsList;
//  G4VPhysicsConstructor*               hadPhysicsList;
  std::vector<G4VPhysicsConstructor*>  hadronPhys;

}; #endif

And my PhysicsList.cc looks like

#include "G4PhysicsListHelper.hh"

#include "PhysicsList.hh" 
#include "G4hMultipleScattering.hh"
#include "G4ParticleDefinition.hh"
#include "G4PhysListFactory.hh"
#include "G4VPhysicsConstructor.hh"

// Physic lists (contained inside the Geant4 distribution)

#include "G4EmStandardPhysics_option3.hh" /// use for "standard EM". Designed for any applications required higher accuracy of electrons, hadrons and ion tracking without magnetic field. 
#include "G4EmLivermorePhysics.hh" /// Precise LE physics
#include "G4EmPenelopePhysics.hh"/// Penelope 2008
#include "G4EmProcessOptions.hh"

#include "G4DecayPhysics.hh"
#include "G4Decay.hh"

#include "G4HadronElasticPhysics.hh"
#include "G4HadronDElasticPhysics.hh"
#include "G4HadronHElasticPhysics.hh"
#include "G4HadronInelasticQBBC.hh"
#include "G4HadronPhysicsQGSP_BIC_HP.hh"
#include "G4HadronPhysicsQGSP_BIC.hh"
//#include "G4QStoppingPhysics.hh" #include "G4IonBinaryCascadePhysics.hh"

#include "G4ionIonisation.hh"
#include "G4LossTableManager.hh"
#include "G4UnitsTable.hh"
#include "G4ProcessManager.hh"
#include "G4IonConstructor.hh"
#include "G4GenericIon.hh"
#include "G4DynamicParticle.hh"

#include "G4StoppingPhysics.hh"
#include "G4IonBinaryCascadePhysics.hh"
#include "G4IonFluctuations.hh"
#include "G4IonParametrisedLossModel.hh"
#include "G4hIonisation.hh"
#include "G4ionIonisation.hh"

#include "G4RadioactiveDecayPhysics.hh"
#include "G4BraggIonGasModel.hh"
#include "G4BetheBlochIonGasModel.hh"
// For units of measurements
#include "G4LossTableManager.hh"
#include "G4UnitsTable.hh"
#include "G4SystemOfUnits.hh"

// The electromagnetic physics and the decay are // registered by default. The user has to execute the // macro physics.mac to activate the hadronic component of the physics. // Look vehicle1.mac, vehicle2.mac and moon.mac for example

PhysicsList::PhysicsList(): G4VModularPhysicsList()

{
  defaultCutValue = 0.1* mm;
  SetVerboseLevel(0);

  // EM physics
   emPhysicsList = new G4EmLivermorePhysics(0);

  // Decay physics 
  decPhysicsList = new G4DecayPhysics();

  // Hadronic Physics
   //hadronPhys.push_back(new G4HadronPhysicsQGSP_BIC_HP());
  hadronPhys.push_back(new G4HadronInelasticQBBC());

  G4cout<< ">> PhysicsList:: G4EmLivermorePhysics activated << "<<G4endl;
  G4cout<< ">> PhysicsList:: Decay activated << "<<G4endl;
  G4cout<< ">> PhysicsList:: HadronPhysicsQGSP_BIC_HP activated << "<<G4endl;

}

PhysicsList::~PhysicsList()
{
  delete emPhysicsList;
  delete decPhysicsList;
  if (hadPhysicsList) delete hadPhysicsList;
  for(size_t i=0; i<hadronPhys.size(); i++) {delete hadronPhys[i];}
}

/////////////////////////////////////////////////////////////////////////////
void PhysicsList::ConstructParticle()
{
  decPhysicsList->ConstructParticle();
    // ions
  G4IonConstructor iConstructor;
  iConstructor.ConstructParticle();
}

void PhysicsList::ConstructProcess()
{
  // transportation
  //
  AddTransportation();

  // electromagnetic physics list
  //
  emPhysicsList->ConstructProcess();
  em_config.AddModels();

  // decay physics list
  //
  decPhysicsList->ConstructProcess();

  // hadronic physics lists

  //   ConstructHad();
  //hadPhysicsList->ConstructProcess();

   for(size_t i=0; i<hadronPhys.size(); i++) {
        hadronPhys[i]->ConstructProcess();
      }
}

void PhysicsList::SetCuts()
{
  G4VUserPhysicsList::SetCutsWithDefault();
  if (verboseLevel>0) DumpCutValuesTable();
}

Inline Depth:
 1 1
 All All
Outline Depth:
 1 1
 2 2
 All All
Add message: (add)

1 Idea: Re: Physics List for Fission fragments as source particles in a gas   (Vladimir Ivanchenko - 30 Jul, 2015)
 Add Message Add Message
to: "Physics List for Fission fragments as source particles in a gas"

 Subscribe Subscribe

This site runs SLAC HyperNews version 1.11-slac-98, derived from the original HyperNews


[ Geant 4 Home | Geant 4 HyperNews | Search | Request New Forum | Feedback ]