Message: Re: Elastic neutron scattering only on W183 ? Not Logged In (login)
 Next-in-Thread Next-in-Thread
 Next-in-Forum Next-in-Forum

None Re: Elastic neutron scattering only on W183 ? 

Forum: Hadronic Processes
Re: None Elastic neutron scattering only on W183 ? (Achim GŁtlein)
Date: 18 Jan, 2007
From: Vladimir IVANTCHENKO <vnivanch@mail.cern.ch>

On Thu, 18 Jan 2007, Achim GŁtlein wrote:

> *** Discussion title: Hadronic Processes
> Email replies to PublicHyperNews@slac.stanford.edu must include:
>   In-Reply-To: <"/hadronprocess/634"@geant4-hn.slac.stanford.edu>
>   Subject: ...change this to be about your reply.
> 
> Hi everyone,
> 
> I am trying to simulate low energy neutrons (few keV - few MeV) in CaWO4
> with Geant4 (Version 8.1). There seems to be a problem with the elstic
> scattering process:
> 
> neutrons scatter only elasicly off W183 nuclei. For the other W isotopes
> there seems to be only inelastic scattering.
> 
> I am not sure where the problem is, so here is my neutron physicslist:
> 
>         // Neutron processes more in detail:
> 
>         //------------------------------- Elastic scattering
> 
>         G4HadronElasticProcess* theNeutronElasticProcess =  new G4HadronElasticProcess;
>         G4LElastic* theElasticModel1 = new G4LElastic;
>         G4NeutronHPElastic * theElasticNeutron = new G4NeutronHPElastic;
>         theNeutronElasticProcess->RegisterMe(theElasticModel1);
>         theElasticModel1->SetMinEnergy(1*MeV);
>         theNeutronElasticProcess->RegisterMe(theElasticNeutron);
>         //G4CrossSectionDataStore * theStore =
>         //((G4HadronElasticProcess*)theNeutronElasticProcess)->GetCrossSectionDataStore();
>         G4NeutronHPElasticData * theNeutronData = new G4NeutronHPElasticData;
>         //theStore->AddDataSet(theNeutronData);
>         theNeutronElasticProcess->AddDataSet(theNeutronData); //Changed S.Neubert 21.04.06
>         pManager->AddDiscreteProcess(theNeutronElasticProcess);
> 
>         //----------------------------- Inelastic scattering
> 
>         G4NeutronInelasticProcess* theInelasticProcess = new G4NeutronInelasticProcess();
>         G4LENeutronInelastic* theInelasticModel = new G4LENeutronInelastic;
>         theInelasticModel->SetMinEnergy(1*MeV);
>         theInelasticProcess->RegisterMe(theInelasticModel);
>         G4NeutronHPInelastic * theLENeutronInelasticModel = new G4NeutronHPInelastic;
>         theInelasticProcess->RegisterMe(theLENeutronInelasticModel);
>         //G4CrossSectionDataStore * theStore1 =
>         //((G4HadronInelasticProcess*)theInelasticProcess)->GetCrossSectionDataStore();
>         G4NeutronHPInelasticData * theNeutronData1 = new G4NeutronHPInelasticData;
>         //theStore1->AddDataSet(theNeutronData1);
>         theInelasticProcess->AddDataSet(theNeutronData1);//Changed S.Neubert 21.04.06
>         pManager->AddDiscreteProcess(theInelasticProcess);
> 
>         // ------------------------------------------Capture
> 
>         G4HadronCaptureProcess* theCaptureProcess = new G4HadronCaptureProcess;
>         G4LCapture* theCaptureModel = new G4LCapture;
>         theCaptureModel->SetMinEnergy(1*MeV);
>         theCaptureProcess->RegisterMe(theCaptureModel);
>         G4NeutronHPCapture * theLENeutronCaptureModel = new G4NeutronHPCapture;
>         theCaptureProcess->RegisterMe(theLENeutronCaptureModel);
> 
>         //G4CrossSectionDataStore * theStore3 = 
>         //((G4HadronCaptureProcess*)theCaptureProcess)->GetCrossSectionDataStore();
>         G4NeutronHPCaptureData * theNeutronData3 = new G4NeutronHPCaptureData;
> 
>         theCaptureProcess->AddDataSet(theNeutronData3);//Changed S.Neubert 21.04.06
>         //theStore3->AddDataSet(theNeutronData3);
>         pManager->AddDiscreteProcess(theCaptureProcess);
> 
> And here is my Material Definition:
> 
>         //------------------------------------------------------ materials
> 
>         G4double density;
> 
>         G4Material* vacuum = new G4Material("vacuum",1, 1.*g/mole, density=0.*g/cm3);
> 
>         G4NistElementBuilder* NistElementBuilder = new G4NistElementBuilder(0);
> 
>         G4Element* W = NistElementBuilder->FindOrBuildElement(74, true);
>         G4Element* Ca = NistElementBuilder->FindOrBuildElement(20, true);
>         G4Element* O = NistElementBuilder->FindOrBuildElement(8, true);
> 
>         density = 6.000*g/cm3;
>         G4double temperature = 0.020 * kelvin;
> 
>         G4Material* CaWO4 = new G4Material("CaWO4", density, 3, kStateSolid, temperature);
>         CaWO4->AddElement(O,4);
>         CaWO4->AddElement(Ca,1);
>         CaWO4->AddElement(W,1);
> 
>         G4cout << *(G4Material::GetMaterialTable()) << G4endl;
> 
> I hope some one can help me...
> 
> Thank you very much
> 
> Achim GŁtlein
> 

Hello,
This problem is known. Some advices:

- try to use predefined physics lists
- for your energy better to use HP subpackage for neutron simulation,
  so you need XXX_HP physics list
- if it will be too slow or you want indeed to create PhysList by
  yourself, please, look into example/extended/hadronic/Hadr01
- LElastic model is not reliable for this energies, in the example the 
  alternative HadronElastic model is proposed.

VI

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

 Add Message Add Message
to: "Re: Elastic neutron scattering only on W183 ?"

 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 ]