Import Geant4 10.0.0 source tree
This commit is contained in:
@@ -7,7 +7,7 @@
|
||||
#
|
||||
# Generated on : 24/9/2010
|
||||
#
|
||||
# $Id: CMakeLists.txt,v 1.1 2010-09-29 19:04:03 bmorgan Exp $
|
||||
# $Id: CMakeLists.txt 77301 2013-11-22 11:09:07Z gcosmo $
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
@@ -0,0 +1,963 @@
|
||||
|
||||
---------------- g4svn ----------------
|
||||
|
||||
Command: svn copy --non-interactive . svn+ssh://bwendt@svn.cern.ch/reps/geant4/branches/geant4/source/processes/hadronic/models/neutron_hp/_symbols/FissFragGen -m "This message was manufactured by g4svn to create branch FissFragGen"
|
||||
|
||||
Committed revision 69414.
|
||||
|
||||
Branch created.
|
||||
|
||||
===========
|
||||
May 6, 2013
|
||||
===========
|
||||
(69493) Moved Fission Fragment Generator files into include/ and src/ directories.
|
||||
Ran command: svn merge -r 69414:HEAD svn+ssh://svn.cern.ch/reps/geant4/trunk/geant4/source/processes/hadronic/models/neutron_hp .
|
||||
No changes made, revision 69414 remains the most recent copy from trunk.
|
||||
|
||||
============
|
||||
May 16, 2013
|
||||
============
|
||||
Ran command: svn merge -r 69414:HEAD svn+ssh://bwendt@svn.cern.ch/reps/geant4/trunk/geant4/source/processes/hadronic/models/neutron_hp .
|
||||
Committed changes:
|
||||
svn commit -m "Comming results of merge from trunk"
|
||||
Sending .
|
||||
Sending FissFragGen.History
|
||||
Deleting FissFragGen.History~
|
||||
Sending History
|
||||
Sending include/G4NeutronHPCapture.hh
|
||||
Sending include/G4NeutronHPCaptureData.hh
|
||||
Sending include/G4NeutronHPElastic.hh
|
||||
Sending include/G4NeutronHPElasticData.hh
|
||||
Sending include/G4NeutronHPFission.hh
|
||||
Sending include/G4NeutronHPFissionData.hh
|
||||
Sending include/G4NeutronHPInelastic.hh
|
||||
Sending include/G4NeutronHPInelasticData.hh
|
||||
Sending src/G4NeutronHPCapture.cc
|
||||
Sending src/G4NeutronHPCaptureData.cc
|
||||
Sending src/G4NeutronHPElastic.cc
|
||||
Sending src/G4NeutronHPElasticData.cc
|
||||
Sending src/G4NeutronHPFission.cc
|
||||
Sending src/G4NeutronHPFissionData.cc
|
||||
Sending src/G4NeutronHPInelastic.cc
|
||||
Sending src/G4NeutronHPInelasticData.cc
|
||||
Transmitting file data ..................
|
||||
Committed revision 69884.
|
||||
|
||||
============
|
||||
May 17, 2013
|
||||
============
|
||||
Compile errors in neutron_hp revolved around non-existant "int GetVerbosity(void)" and "void SetVerbosity(int)" in "G4NeutronHPManager.hh"
|
||||
Resolved: Added missing methods to "G4HPNeutronManager.hh"
|
||||
Added "G4HPNeutronManager.hh" include to:
|
||||
G4NeutronHPInelasticData.cc
|
||||
G4NeutronHPElasticData.cc
|
||||
G4NeutronHPCaptureData.cc
|
||||
G4NeutronHPFissionData.cc
|
||||
|
||||
============
|
||||
May 21, 2013
|
||||
============
|
||||
Removed G4FissionFragment, will be replaced by pre-existing G4DynamicParticle
|
||||
Removed G4FissionContainer, will be replaced by pre-existing G4HadFinalState
|
||||
Affected classes: G4FissionFragmentGenerator, G4FissionProductYieldDist
|
||||
|
||||
============
|
||||
May 22, 2013
|
||||
============
|
||||
Altered intent to use G4DynamicParticleVector instead of G4HadFinalState
|
||||
Completed migration to existing Geant4 data types
|
||||
Resolved compile errors in G4HPNeutronManager class
|
||||
Committed changes:
|
||||
svn ci -m "Finished migration to existing data types. Comitting results of merge from trunk"
|
||||
Sending .
|
||||
Sending FissFragGen.History
|
||||
Sending History
|
||||
Sending include/G4ArrayOps.hh
|
||||
Sending include/G4FFGDebuggingMacros.hh
|
||||
Sending include/G4FFGDefaultValues.hh
|
||||
Deleting include/G4FissionContainer.hh
|
||||
Deleting include/G4FissionFragment.hh
|
||||
Sending include/G4FissionFragmentGenerator.hh
|
||||
Sending include/G4FissionProductYieldDist.hh
|
||||
Sending include/G4NeutronHPManager.hh
|
||||
Sending sources.cmake
|
||||
Sending src/G4FFGUserPrimaryGeneratorAction.cc
|
||||
Sending src/G4FPYSamplingOps.cc
|
||||
Deleting src/G4FissionContainer.cc
|
||||
Deleting src/G4FissionFragment.cc
|
||||
Sending src/G4FissionFragmentGenerator.cc
|
||||
Sending src/G4FissionProductYieldDist.cc
|
||||
Sending src/G4NeutronHPCaptureData.cc
|
||||
Sending src/G4NeutronHPElasticData.cc
|
||||
Sending src/G4NeutronHPFissionData.cc
|
||||
Sending src/G4NeutronHPInelasticData.cc
|
||||
Sending src/G4NeutronHPManager.cc
|
||||
Sending src/G4ShiftedGaussian.cc
|
||||
Transmitting file data ...................
|
||||
Committed revision 70063.
|
||||
|
||||
============
|
||||
June 21, 2013
|
||||
============
|
||||
Ran command: svn merge -r 70063:HEAD svn+ssh://bwendt@svn.cern.ch/reps/geant4/trunk/geant4/source/processes/hadronic/models/neutron_hp .
|
||||
Committed changes:
|
||||
svn ci -m "Committing results of merge from trunk"
|
||||
Sending .
|
||||
Sending CMakeLists.txt
|
||||
Sending GNUmakefile
|
||||
Sending History
|
||||
Sending include
|
||||
Sending include/G4ArrayOps.hh
|
||||
Sending include/G4ENDFTapeRead.hh
|
||||
Sending include/G4FFGDebuggingMacros.hh
|
||||
Sending include/G4FFGDefaultValues.hh
|
||||
Sending include/G4FFGEnumerations.hh
|
||||
Sending include/G4FFGUPGAMessenger.hh
|
||||
Sending include/G4FFGUserPrimaryGeneratorAction.hh
|
||||
Sending include/G4FFGVerboseMacros.hh
|
||||
Sending include/G4FPYBiasedLightFragmentDist.hh
|
||||
Sending include/G4FPYNormalFragmentDist.hh
|
||||
Sending include/G4FPYNubarValues.hh
|
||||
Sending include/G4FPYSamplingOps.hh
|
||||
Sending include/G4FPYTreeStructures.hh
|
||||
Sending include/G4FissionFragmentGenerator.hh
|
||||
Sending include/G4FissionProductYieldDist.hh
|
||||
Sending include/G4InterpolationIterator.hh
|
||||
Sending include/G4InterpolationManager.hh
|
||||
Sending include/G4InterpolationScheme.hh
|
||||
Sending include/G4NeutronHP2AInelasticFS.hh
|
||||
Sending include/G4NeutronHP2N2AInelasticFS.hh
|
||||
Sending include/G4NeutronHP2NAInelasticFS.hh
|
||||
Sending include/G4NeutronHP2NDInelasticFS.hh
|
||||
Sending include/G4NeutronHP2NInelasticFS.hh
|
||||
Sending include/G4NeutronHP2NPInelasticFS.hh
|
||||
Sending include/G4NeutronHP2PInelasticFS.hh
|
||||
Sending include/G4NeutronHP3AInelasticFS.hh
|
||||
Sending include/G4NeutronHP3NAInelasticFS.hh
|
||||
Sending include/G4NeutronHP3NInelasticFS.hh
|
||||
Sending include/G4NeutronHP3NPInelasticFS.hh
|
||||
Sending include/G4NeutronHP4NInelasticFS.hh
|
||||
Sending include/G4NeutronHPAInelasticFS.hh
|
||||
Sending include/G4NeutronHPAngular.hh
|
||||
Sending include/G4NeutronHPAngularP.hh
|
||||
Sending include/G4NeutronHPArbitaryTab.hh
|
||||
Sending include/G4NeutronHPBGGNucleonInelasticXS.hh
|
||||
Sending include/G4NeutronHPCapture.hh
|
||||
Sending include/G4NeutronHPCaptureData.hh
|
||||
Sending include/G4NeutronHPCaptureFS.hh
|
||||
Sending include/G4NeutronHPChannel.hh
|
||||
Sending include/G4NeutronHPChannelList.hh
|
||||
Sending include/G4NeutronHPContAngularPar.hh
|
||||
Sending include/G4NeutronHPContEnergyAngular.hh
|
||||
Sending include/G4NeutronHPD2AInelasticFS.hh
|
||||
Sending include/G4NeutronHPDAInelasticFS.hh
|
||||
Sending include/G4NeutronHPDInelasticFS.hh
|
||||
Sending include/G4NeutronHPData.hh
|
||||
Sending include/G4NeutronHPDataPoint.hh
|
||||
Sending include/G4NeutronHPDataUsed.hh
|
||||
Sending include/G4NeutronHPDeExGammas.hh
|
||||
Sending include/G4NeutronHPDiscreteTwoBody.hh
|
||||
Sending include/G4NeutronHPElastic.hh
|
||||
Sending include/G4NeutronHPElasticData.hh
|
||||
Sending include/G4NeutronHPElasticFS.hh
|
||||
Sending include/G4NeutronHPElementData.hh
|
||||
Sending include/G4NeutronHPEnAngCorrelation.hh
|
||||
Sending include/G4NeutronHPEnergyDistribution.hh
|
||||
Sending include/G4NeutronHPEvapSpectrum.hh
|
||||
Sending include/G4NeutronHPFCFissionFS.hh
|
||||
Sending include/G4NeutronHPFFFissionFS.hh
|
||||
Sending include/G4NeutronHPFSFissionFS.hh
|
||||
Sending include/G4NeutronHPFastLegendre.hh
|
||||
Sending include/G4NeutronHPField.hh
|
||||
Sending include/G4NeutronHPFieldPoint.hh
|
||||
Sending include/G4NeutronHPFinalState.hh
|
||||
Sending include/G4NeutronHPFission.hh
|
||||
Sending include/G4NeutronHPFissionBaseFS.hh
|
||||
Sending include/G4NeutronHPFissionData.hh
|
||||
Sending include/G4NeutronHPFissionERelease.hh
|
||||
Sending include/G4NeutronHPFissionFS.hh
|
||||
Sending include/G4NeutronHPFissionSpectrum.hh
|
||||
Sending include/G4NeutronHPGamma.hh
|
||||
Sending include/G4NeutronHPHash.hh
|
||||
Sending include/G4NeutronHPHe3InelasticFS.hh
|
||||
Sending include/G4NeutronHPInelastic.hh
|
||||
Sending include/G4NeutronHPInelasticBaseFS.hh
|
||||
Sending include/G4NeutronHPInelasticCompFS.hh
|
||||
Sending include/G4NeutronHPInelasticData.hh
|
||||
Sending include/G4NeutronHPInterpolator.hh
|
||||
Sending include/G4NeutronHPIsoData.hh
|
||||
Sending include/G4NeutronHPIsotropic.hh
|
||||
Sending include/G4NeutronHPJENDLHEData.hh
|
||||
Sending include/G4NeutronHPJENDLHEElasticData.hh
|
||||
Sending include/G4NeutronHPJENDLHEInelasticData.hh
|
||||
Sending include/G4NeutronHPKallbachMannSyst.hh
|
||||
Sending include/G4NeutronHPLCFissionFS.hh
|
||||
Sending include/G4NeutronHPLabAngularEnergy.hh
|
||||
Sending include/G4NeutronHPLegendreStore.hh
|
||||
Sending include/G4NeutronHPLegendreTable.hh
|
||||
Sending include/G4NeutronHPLevel.hh
|
||||
Sending include/G4NeutronHPList.hh
|
||||
Sending include/G4NeutronHPMadlandNixSpectrum.hh
|
||||
Sending include/G4NeutronHPManager.hh
|
||||
Sending include/G4NeutronHPN2AInelasticFS.hh
|
||||
Sending include/G4NeutronHPN2PInelasticFS.hh
|
||||
Sending include/G4NeutronHPN3AInelasticFS.hh
|
||||
Sending include/G4NeutronHPNAInelasticFS.hh
|
||||
Sending include/G4NeutronHPNBodyPhaseSpace.hh
|
||||
Sending include/G4NeutronHPND2AInelasticFS.hh
|
||||
Sending include/G4NeutronHPNDInelasticFS.hh
|
||||
Sending include/G4NeutronHPNHe3InelasticFS.hh
|
||||
Sending include/G4NeutronHPNInelasticFS.hh
|
||||
Sending include/G4NeutronHPNPAInelasticFS.hh
|
||||
Sending include/G4NeutronHPNPInelasticFS.hh
|
||||
Sending include/G4NeutronHPNT2AInelasticFS.hh
|
||||
Sending include/G4NeutronHPNTInelasticFS.hh
|
||||
Sending include/G4NeutronHPNXInelasticFS.hh
|
||||
Sending include/G4NeutronHPNames.hh
|
||||
Sending include/G4NeutronHPNeutronYield.hh
|
||||
Sending include/G4NeutronHPPAInelasticFS.hh
|
||||
Sending include/G4NeutronHPPDInelasticFS.hh
|
||||
Sending include/G4NeutronHPPInelasticFS.hh
|
||||
Sending include/G4NeutronHPPTInelasticFS.hh
|
||||
Sending include/G4NeutronHPPartial.hh
|
||||
Sending include/G4NeutronHPPhotonDist.hh
|
||||
Sending include/G4NeutronHPPhotonXSection.hh
|
||||
Sending include/G4NeutronHPPolynomExpansion.hh
|
||||
Sending include/G4NeutronHPProduct.hh
|
||||
Sending include/G4NeutronHPReactionWhiteBoard.hh
|
||||
Sending include/G4NeutronHPSCFissionFS.hh
|
||||
Sending include/G4NeutronHPSimpleEvapSpectrum.hh
|
||||
Sending include/G4NeutronHPT2AInelasticFS.hh
|
||||
Sending include/G4NeutronHPTCFissionFS.hh
|
||||
Sending include/G4NeutronHPTInelasticFS.hh
|
||||
Sending include/G4NeutronHPThermalBoost.hh
|
||||
Sending include/G4NeutronHPThermalScattering.hh
|
||||
Sending include/G4NeutronHPThermalScatteringData.hh
|
||||
Sending include/G4NeutronHPThermalScatteringNames.hh
|
||||
Sending include/G4NeutronHPVector.hh
|
||||
Sending include/G4NeutronHPWattSpectrum.hh
|
||||
Sending include/G4ShiftedGaussian.hh
|
||||
Sending include/G4TableTemplate.hh
|
||||
Sending include/G4VNeutronHPEDis.hh
|
||||
Sending include/G4VNeutronHPEnergyAngular.hh
|
||||
Sending include/G4WattFissionSpectrumValues.hh
|
||||
Sending sources.cmake
|
||||
Sending src
|
||||
Sending src/G4NeutronHPCaptureFS.cc
|
||||
Sending src/G4NeutronHPFFFissionFS.cc
|
||||
Sending src/G4NeutronHPThermalScattering.cc
|
||||
Sending src/G4NeutronHPThermalScatteringData.cc
|
||||
Sending src/G4NeutronHPThermalScatteringNames.cc
|
||||
Sending test
|
||||
Transmitting file data ..........
|
||||
Committed revision 71740.
|
||||
|
||||
Created hook in G4NeutronHPChannel
|
||||
Added class: G4WendtFissionFragmentGenerator
|
||||
Committed changes:
|
||||
svn ci -m "Added hook into G4NeutronHPChannel"
|
||||
Sending FissFragGen.History
|
||||
Sending include/G4ENDFYieldDataContainer.hh
|
||||
Sending include/G4FissionFragmentGenerator.hh
|
||||
Adding include/G4WendtFissionFragmentGenerator.hh
|
||||
Sending sources.cmake
|
||||
Sending src/G4FissionFragmentGenerator.cc
|
||||
Sending src/G4NeutronHPChannel.cc
|
||||
Adding src/G4WendtFissionFragmentGenerator.cc
|
||||
Transmitting file data ........
|
||||
Committed revision 71768.
|
||||
|
||||
============
|
||||
June 28, 2013
|
||||
============
|
||||
Ran command: svn merge -r 71740:HEAD svn+ssh://bwendt@svn.cern.ch/reps/geant4/trunk/geant4/source/processes/hadronic/models/neutron_hp .
|
||||
Committed changes:
|
||||
svn ci -m "Committing results of merge from trunk"
|
||||
Sending .
|
||||
Sending CMakeLists.txt
|
||||
Sending FissFragGen.History
|
||||
Sending GNUmakefile
|
||||
Sending History
|
||||
Sending include
|
||||
Sending include/G4ArrayOps.hh
|
||||
Sending include/G4ENDFTapeRead.hh
|
||||
Sending include/G4FFGDebuggingMacros.hh
|
||||
Sending include/G4FFGDefaultValues.hh
|
||||
Sending include/G4FFGEnumerations.hh
|
||||
Sending include/G4FFGUPGAMessenger.hh
|
||||
Sending include/G4FFGUserPrimaryGeneratorAction.hh
|
||||
Sending include/G4FFGVerboseMacros.hh
|
||||
Sending include/G4FPYBiasedLightFragmentDist.hh
|
||||
Sending include/G4FPYNormalFragmentDist.hh
|
||||
Sending include/G4FPYNubarValues.hh
|
||||
Sending include/G4FPYSamplingOps.hh
|
||||
Sending include/G4FPYTreeStructures.hh
|
||||
Sending include/G4FissionFragmentGenerator.hh
|
||||
Sending include/G4FissionProductYieldDist.hh
|
||||
Sending include/G4InterpolationIterator.hh
|
||||
Sending include/G4InterpolationManager.hh
|
||||
Sending include/G4InterpolationScheme.hh
|
||||
Sending include/G4NeutronHP2AInelasticFS.hh
|
||||
Sending include/G4NeutronHP2N2AInelasticFS.hh
|
||||
Sending include/G4NeutronHP2NAInelasticFS.hh
|
||||
Sending include/G4NeutronHP2NDInelasticFS.hh
|
||||
Sending include/G4NeutronHP2NInelasticFS.hh
|
||||
Sending include/G4NeutronHP2NPInelasticFS.hh
|
||||
Sending include/G4NeutronHP2PInelasticFS.hh
|
||||
Sending include/G4NeutronHP3AInelasticFS.hh
|
||||
Sending include/G4NeutronHP3NAInelasticFS.hh
|
||||
Sending include/G4NeutronHP3NInelasticFS.hh
|
||||
Sending include/G4NeutronHP3NPInelasticFS.hh
|
||||
Sending include/G4NeutronHP4NInelasticFS.hh
|
||||
Sending include/G4NeutronHPAInelasticFS.hh
|
||||
Sending include/G4NeutronHPAngular.hh
|
||||
Sending include/G4NeutronHPAngularP.hh
|
||||
Sending include/G4NeutronHPArbitaryTab.hh
|
||||
Sending include/G4NeutronHPBGGNucleonInelasticXS.hh
|
||||
Sending include/G4NeutronHPCapture.hh
|
||||
Sending include/G4NeutronHPCaptureData.hh
|
||||
Sending include/G4NeutronHPCaptureFS.hh
|
||||
Sending include/G4NeutronHPChannel.hh
|
||||
Sending include/G4NeutronHPChannelList.hh
|
||||
Sending include/G4NeutronHPContAngularPar.hh
|
||||
Sending include/G4NeutronHPContEnergyAngular.hh
|
||||
Sending include/G4NeutronHPD2AInelasticFS.hh
|
||||
Sending include/G4NeutronHPDAInelasticFS.hh
|
||||
Sending include/G4NeutronHPDInelasticFS.hh
|
||||
Sending include/G4NeutronHPData.hh
|
||||
Sending include/G4NeutronHPDataPoint.hh
|
||||
Sending include/G4NeutronHPDataUsed.hh
|
||||
Sending include/G4NeutronHPDeExGammas.hh
|
||||
Sending include/G4NeutronHPDiscreteTwoBody.hh
|
||||
Sending include/G4NeutronHPElastic.hh
|
||||
Sending include/G4NeutronHPElasticData.hh
|
||||
Sending include/G4NeutronHPElasticFS.hh
|
||||
Sending include/G4NeutronHPElementData.hh
|
||||
Sending include/G4NeutronHPEnAngCorrelation.hh
|
||||
Sending include/G4NeutronHPEnergyDistribution.hh
|
||||
Sending include/G4NeutronHPEvapSpectrum.hh
|
||||
Sending include/G4NeutronHPFCFissionFS.hh
|
||||
Sending include/G4NeutronHPFFFissionFS.hh
|
||||
Sending include/G4NeutronHPFSFissionFS.hh
|
||||
Sending include/G4NeutronHPFastLegendre.hh
|
||||
Sending include/G4NeutronHPField.hh
|
||||
Sending include/G4NeutronHPFieldPoint.hh
|
||||
Sending include/G4NeutronHPFinalState.hh
|
||||
Sending include/G4NeutronHPFission.hh
|
||||
Sending include/G4NeutronHPFissionBaseFS.hh
|
||||
Sending include/G4NeutronHPFissionData.hh
|
||||
Sending include/G4NeutronHPFissionERelease.hh
|
||||
Sending include/G4NeutronHPFissionFS.hh
|
||||
Sending include/G4NeutronHPFissionSpectrum.hh
|
||||
Sending include/G4NeutronHPGamma.hh
|
||||
Sending include/G4NeutronHPHash.hh
|
||||
Sending include/G4NeutronHPHe3InelasticFS.hh
|
||||
Sending include/G4NeutronHPInelastic.hh
|
||||
Sending include/G4NeutronHPInelasticBaseFS.hh
|
||||
Sending include/G4NeutronHPInelasticCompFS.hh
|
||||
Sending include/G4NeutronHPInelasticData.hh
|
||||
Sending include/G4NeutronHPInterpolator.hh
|
||||
Sending include/G4NeutronHPIsoData.hh
|
||||
Sending include/G4NeutronHPIsotropic.hh
|
||||
Sending include/G4NeutronHPJENDLHEData.hh
|
||||
Sending include/G4NeutronHPJENDLHEElasticData.hh
|
||||
Sending include/G4NeutronHPJENDLHEInelasticData.hh
|
||||
Sending include/G4NeutronHPKallbachMannSyst.hh
|
||||
Sending include/G4NeutronHPLCFissionFS.hh
|
||||
Sending include/G4NeutronHPLabAngularEnergy.hh
|
||||
Sending include/G4NeutronHPLegendreStore.hh
|
||||
Sending include/G4NeutronHPLegendreTable.hh
|
||||
Sending include/G4NeutronHPLevel.hh
|
||||
Sending include/G4NeutronHPList.hh
|
||||
Sending include/G4NeutronHPMadlandNixSpectrum.hh
|
||||
Sending include/G4NeutronHPManager.hh
|
||||
Sending include/G4NeutronHPN2AInelasticFS.hh
|
||||
Sending include/G4NeutronHPN2PInelasticFS.hh
|
||||
Sending include/G4NeutronHPN3AInelasticFS.hh
|
||||
Sending include/G4NeutronHPNAInelasticFS.hh
|
||||
Sending include/G4NeutronHPNBodyPhaseSpace.hh
|
||||
Sending include/G4NeutronHPND2AInelasticFS.hh
|
||||
Sending include/G4NeutronHPNDInelasticFS.hh
|
||||
Sending include/G4NeutronHPNHe3InelasticFS.hh
|
||||
Sending include/G4NeutronHPNInelasticFS.hh
|
||||
Sending include/G4NeutronHPNPAInelasticFS.hh
|
||||
Sending include/G4NeutronHPNPInelasticFS.hh
|
||||
Sending include/G4NeutronHPNT2AInelasticFS.hh
|
||||
Sending include/G4NeutronHPNTInelasticFS.hh
|
||||
Sending include/G4NeutronHPNXInelasticFS.hh
|
||||
Sending include/G4NeutronHPNames.hh
|
||||
Sending include/G4NeutronHPNeutronYield.hh
|
||||
Sending include/G4NeutronHPPAInelasticFS.hh
|
||||
Sending include/G4NeutronHPPDInelasticFS.hh
|
||||
Sending include/G4NeutronHPPInelasticFS.hh
|
||||
Sending include/G4NeutronHPPTInelasticFS.hh
|
||||
Sending include/G4NeutronHPPartial.hh
|
||||
Sending include/G4NeutronHPPhotonDist.hh
|
||||
Sending include/G4NeutronHPPhotonXSection.hh
|
||||
Sending include/G4NeutronHPPolynomExpansion.hh
|
||||
Sending include/G4NeutronHPProduct.hh
|
||||
Sending include/G4NeutronHPReactionWhiteBoard.hh
|
||||
Sending include/G4NeutronHPSCFissionFS.hh
|
||||
Sending include/G4NeutronHPSimpleEvapSpectrum.hh
|
||||
Sending include/G4NeutronHPT2AInelasticFS.hh
|
||||
Sending include/G4NeutronHPTCFissionFS.hh
|
||||
Sending include/G4NeutronHPTInelasticFS.hh
|
||||
Sending include/G4NeutronHPThermalBoost.hh
|
||||
Sending include/G4NeutronHPThermalScattering.hh
|
||||
Sending include/G4NeutronHPThermalScatteringData.hh
|
||||
Sending include/G4NeutronHPThermalScatteringNames.hh
|
||||
Sending include/G4NeutronHPVector.hh
|
||||
Sending include/G4NeutronHPWattSpectrum.hh
|
||||
Sending include/G4ShiftedGaussian.hh
|
||||
Sending include/G4TableTemplate.hh
|
||||
Sending include/G4VNeutronHPEDis.hh
|
||||
Sending include/G4VNeutronHPEnergyAngular.hh
|
||||
Sending include/G4WattFissionSpectrumValues.hh
|
||||
Sending include/G4WendtFissionFragmentGenerator.hh
|
||||
Sending sources.cmake
|
||||
Sending src
|
||||
Sending src/G4NeutronHPChannel.cc
|
||||
Sending src/G4NeutronHPThermalScatteringData.cc
|
||||
Sending src/G4WendtFissionFragmentGenerator.cc
|
||||
Sending test
|
||||
Transmitting file data .....
|
||||
Committed revision 71944.
|
||||
|
||||
============
|
||||
July 11, 2013
|
||||
============
|
||||
Ran command: svn merge -r 71944:HEAD svn+ssh://bwendt@svn.cern.ch/reps/geant4/trunk/geant4/source/processes/hadronic/models/neutron_hp .
|
||||
Committed changes:
|
||||
svn ci -m "Committing current status of the G4FissFragGen Branch"
|
||||
Sending .
|
||||
Sending CMakeLists.txt
|
||||
Sending FissFragGen.History
|
||||
Sending GNUmakefile
|
||||
Sending History
|
||||
Sending include
|
||||
Sending include/G4ArrayOps.hh
|
||||
Sending include/G4ENDFTapeRead.hh
|
||||
Sending include/G4ENDFYieldDataContainer.hh
|
||||
Sending include/G4FFGDebuggingMacros.hh
|
||||
Sending include/G4FFGDefaultValues.hh
|
||||
Sending include/G4FFGEnumerations.hh
|
||||
Sending include/G4FFGUPGAMessenger.hh
|
||||
Sending include/G4FFGUserPrimaryGeneratorAction.hh
|
||||
Sending include/G4FFGVerboseMacros.hh
|
||||
Sending include/G4FPYBiasedLightFragmentDist.hh
|
||||
Sending include/G4FPYNormalFragmentDist.hh
|
||||
Sending include/G4FPYNubarValues.hh
|
||||
Sending include/G4FPYSamplingOps.hh
|
||||
Sending include/G4FPYTreeStructures.hh
|
||||
Sending include/G4FissionFragmentGenerator.hh
|
||||
Sending include/G4FissionProductYieldDist.hh
|
||||
Sending include/G4InterpolationIterator.hh
|
||||
Sending include/G4InterpolationManager.hh
|
||||
Sending include/G4InterpolationScheme.hh
|
||||
Sending include/G4NeutronHP2AInelasticFS.hh
|
||||
Sending include/G4NeutronHP2N2AInelasticFS.hh
|
||||
Sending include/G4NeutronHP2NAInelasticFS.hh
|
||||
Sending include/G4NeutronHP2NDInelasticFS.hh
|
||||
Sending include/G4NeutronHP2NInelasticFS.hh
|
||||
Sending include/G4NeutronHP2NPInelasticFS.hh
|
||||
Sending include/G4NeutronHP2PInelasticFS.hh
|
||||
Sending include/G4NeutronHP3AInelasticFS.hh
|
||||
Sending include/G4NeutronHP3NAInelasticFS.hh
|
||||
Sending include/G4NeutronHP3NInelasticFS.hh
|
||||
Sending include/G4NeutronHP3NPInelasticFS.hh
|
||||
Sending include/G4NeutronHP4NInelasticFS.hh
|
||||
Sending include/G4NeutronHPAInelasticFS.hh
|
||||
Sending include/G4NeutronHPAngular.hh
|
||||
Sending include/G4NeutronHPAngularP.hh
|
||||
Sending include/G4NeutronHPArbitaryTab.hh
|
||||
Sending include/G4NeutronHPBGGNucleonInelasticXS.hh
|
||||
Sending include/G4NeutronHPCapture.hh
|
||||
Sending include/G4NeutronHPCaptureData.hh
|
||||
Sending include/G4NeutronHPCaptureFS.hh
|
||||
Sending include/G4NeutronHPChannel.hh
|
||||
Sending include/G4NeutronHPChannelList.hh
|
||||
Sending include/G4NeutronHPContAngularPar.hh
|
||||
Sending include/G4NeutronHPContEnergyAngular.hh
|
||||
Sending include/G4NeutronHPD2AInelasticFS.hh
|
||||
Sending include/G4NeutronHPDAInelasticFS.hh
|
||||
Sending include/G4NeutronHPDInelasticFS.hh
|
||||
Sending include/G4NeutronHPData.hh
|
||||
Sending include/G4NeutronHPDataPoint.hh
|
||||
Sending include/G4NeutronHPDataUsed.hh
|
||||
Sending include/G4NeutronHPDeExGammas.hh
|
||||
Sending include/G4NeutronHPDiscreteTwoBody.hh
|
||||
Sending include/G4NeutronHPElastic.hh
|
||||
Sending include/G4NeutronHPElasticData.hh
|
||||
Sending include/G4NeutronHPElasticFS.hh
|
||||
Sending include/G4NeutronHPElementData.hh
|
||||
Sending include/G4NeutronHPEnAngCorrelation.hh
|
||||
Sending include/G4NeutronHPEnergyDistribution.hh
|
||||
Sending include/G4NeutronHPEvapSpectrum.hh
|
||||
Sending include/G4NeutronHPFCFissionFS.hh
|
||||
Sending include/G4NeutronHPFFFissionFS.hh
|
||||
Sending include/G4NeutronHPFSFissionFS.hh
|
||||
Sending include/G4NeutronHPFastLegendre.hh
|
||||
Sending include/G4NeutronHPField.hh
|
||||
Sending include/G4NeutronHPFieldPoint.hh
|
||||
Sending include/G4NeutronHPFinalState.hh
|
||||
Sending include/G4NeutronHPFission.hh
|
||||
Sending include/G4NeutronHPFissionBaseFS.hh
|
||||
Sending include/G4NeutronHPFissionData.hh
|
||||
Sending include/G4NeutronHPFissionERelease.hh
|
||||
Sending include/G4NeutronHPFissionFS.hh
|
||||
Sending include/G4NeutronHPFissionSpectrum.hh
|
||||
Sending include/G4NeutronHPGamma.hh
|
||||
Sending include/G4NeutronHPHash.hh
|
||||
Sending include/G4NeutronHPHe3InelasticFS.hh
|
||||
Sending include/G4NeutronHPInelastic.hh
|
||||
Sending include/G4NeutronHPInelasticBaseFS.hh
|
||||
Sending include/G4NeutronHPInelasticCompFS.hh
|
||||
Sending include/G4NeutronHPInelasticData.hh
|
||||
Sending include/G4NeutronHPInterpolator.hh
|
||||
Sending include/G4NeutronHPIsoData.hh
|
||||
Sending include/G4NeutronHPIsotropic.hh
|
||||
Sending include/G4NeutronHPJENDLHEData.hh
|
||||
Sending include/G4NeutronHPJENDLHEElasticData.hh
|
||||
Sending include/G4NeutronHPJENDLHEInelasticData.hh
|
||||
Sending include/G4NeutronHPKallbachMannSyst.hh
|
||||
Sending include/G4NeutronHPLCFissionFS.hh
|
||||
Sending include/G4NeutronHPLabAngularEnergy.hh
|
||||
Sending include/G4NeutronHPLegendreStore.hh
|
||||
Sending include/G4NeutronHPLegendreTable.hh
|
||||
Sending include/G4NeutronHPLevel.hh
|
||||
Sending include/G4NeutronHPList.hh
|
||||
Sending include/G4NeutronHPMadlandNixSpectrum.hh
|
||||
Sending include/G4NeutronHPManager.hh
|
||||
Sending include/G4NeutronHPN2AInelasticFS.hh
|
||||
Sending include/G4NeutronHPN2PInelasticFS.hh
|
||||
Sending include/G4NeutronHPN3AInelasticFS.hh
|
||||
Sending include/G4NeutronHPNAInelasticFS.hh
|
||||
Sending include/G4NeutronHPNBodyPhaseSpace.hh
|
||||
Sending include/G4NeutronHPND2AInelasticFS.hh
|
||||
Sending include/G4NeutronHPNDInelasticFS.hh
|
||||
Sending include/G4NeutronHPNHe3InelasticFS.hh
|
||||
Sending include/G4NeutronHPNInelasticFS.hh
|
||||
Sending include/G4NeutronHPNPAInelasticFS.hh
|
||||
Sending include/G4NeutronHPNPInelasticFS.hh
|
||||
Sending include/G4NeutronHPNT2AInelasticFS.hh
|
||||
Sending include/G4NeutronHPNTInelasticFS.hh
|
||||
Sending include/G4NeutronHPNXInelasticFS.hh
|
||||
Sending include/G4NeutronHPNames.hh
|
||||
Sending include/G4NeutronHPNeutronYield.hh
|
||||
Sending include/G4NeutronHPPAInelasticFS.hh
|
||||
Sending include/G4NeutronHPPDInelasticFS.hh
|
||||
Sending include/G4NeutronHPPInelasticFS.hh
|
||||
Sending include/G4NeutronHPPTInelasticFS.hh
|
||||
Sending include/G4NeutronHPPartial.hh
|
||||
Sending include/G4NeutronHPPhotonDist.hh
|
||||
Sending include/G4NeutronHPPhotonXSection.hh
|
||||
Sending include/G4NeutronHPPolynomExpansion.hh
|
||||
Sending include/G4NeutronHPProduct.hh
|
||||
Sending include/G4NeutronHPReactionWhiteBoard.hh
|
||||
Sending include/G4NeutronHPSCFissionFS.hh
|
||||
Sending include/G4NeutronHPSimpleEvapSpectrum.hh
|
||||
Sending include/G4NeutronHPT2AInelasticFS.hh
|
||||
Sending include/G4NeutronHPTCFissionFS.hh
|
||||
Sending include/G4NeutronHPTInelasticFS.hh
|
||||
Sending include/G4NeutronHPThermalBoost.hh
|
||||
Sending include/G4NeutronHPThermalScattering.hh
|
||||
Sending include/G4NeutronHPThermalScatteringData.hh
|
||||
Sending include/G4NeutronHPThermalScatteringNames.hh
|
||||
Sending include/G4NeutronHPVector.hh
|
||||
Sending include/G4NeutronHPWattSpectrum.hh
|
||||
Sending include/G4ShiftedGaussian.hh
|
||||
Sending include/G4TableTemplate.hh
|
||||
Sending include/G4VNeutronHPEDis.hh
|
||||
Sending include/G4VNeutronHPEnergyAngular.hh
|
||||
Sending include/G4WattFissionSpectrumValues.hh
|
||||
Sending include/G4WendtFissionFragmentGenerator.hh
|
||||
Sending sources.cmake
|
||||
Sending src
|
||||
Sending src/G4NeutronHPChannel.cc
|
||||
Sending src/G4WendtFissionFragmentGenerator.cc
|
||||
Sending test
|
||||
Transmitting file data .....
|
||||
Committed revision 72217.
|
||||
|
||||
============
|
||||
October 28, 2013
|
||||
============
|
||||
Ran command: svn merge -r 72217:HEAD svn+ssh://bwendt@svn.cern.ch/reps/geant4/trunk/geant4/source/processes/hadronic/models/neutron_hp .
|
||||
Committed changes:
|
||||
svn ci -m "Committing current status of the G4FissFragGen Branch"
|
||||
Sending .
|
||||
Sending CMakeLists.txt
|
||||
Sending FissFragGen.History
|
||||
Sending GNUmakefile
|
||||
Sending History
|
||||
Sending include
|
||||
Sending include/G4ArrayOps.hh
|
||||
Sending include/G4ENDFTapeRead.hh
|
||||
Sending include/G4ENDFYieldDataContainer.hh
|
||||
Sending include/G4FFGDebuggingMacros.hh
|
||||
Sending include/G4FFGDefaultValues.hh
|
||||
Sending include/G4FFGEnumerations.hh
|
||||
Sending include/G4FFGUPGAMessenger.hh
|
||||
Sending include/G4FFGUserPrimaryGeneratorAction.hh
|
||||
Sending include/G4FFGVerboseMacros.hh
|
||||
Sending include/G4FPYBiasedLightFragmentDist.hh
|
||||
Sending include/G4FPYNormalFragmentDist.hh
|
||||
Sending include/G4FPYNubarValues.hh
|
||||
Sending include/G4FPYSamplingOps.hh
|
||||
Sending include/G4FPYTreeStructures.hh
|
||||
Sending include/G4FissionFragmentGenerator.hh
|
||||
Sending include/G4FissionProductYieldDist.hh
|
||||
Sending include/G4InterpolationIterator.hh
|
||||
Sending include/G4InterpolationManager.hh
|
||||
Sending include/G4InterpolationScheme.hh
|
||||
Sending include/G4NeutronHP2AInelasticFS.hh
|
||||
Sending include/G4NeutronHP2N2AInelasticFS.hh
|
||||
Sending include/G4NeutronHP2NAInelasticFS.hh
|
||||
Sending include/G4NeutronHP2NDInelasticFS.hh
|
||||
Sending include/G4NeutronHP2NInelasticFS.hh
|
||||
Sending include/G4NeutronHP2NPInelasticFS.hh
|
||||
Sending include/G4NeutronHP2PInelasticFS.hh
|
||||
Sending include/G4NeutronHP3AInelasticFS.hh
|
||||
Sending include/G4NeutronHP3NAInelasticFS.hh
|
||||
Sending include/G4NeutronHP3NInelasticFS.hh
|
||||
Sending include/G4NeutronHP3NPInelasticFS.hh
|
||||
Sending include/G4NeutronHP4NInelasticFS.hh
|
||||
Sending include/G4NeutronHPAInelasticFS.hh
|
||||
Sending include/G4NeutronHPAngular.hh
|
||||
Sending include/G4NeutronHPAngularP.hh
|
||||
Sending include/G4NeutronHPArbitaryTab.hh
|
||||
Sending include/G4NeutronHPBGGNucleonInelasticXS.hh
|
||||
Sending include/G4NeutronHPCapture.hh
|
||||
Sending include/G4NeutronHPCaptureData.hh
|
||||
Sending include/G4NeutronHPCaptureFS.hh
|
||||
Sending include/G4NeutronHPChannel.hh
|
||||
Sending include/G4NeutronHPChannelList.hh
|
||||
Sending include/G4NeutronHPContAngularPar.hh
|
||||
Sending include/G4NeutronHPContEnergyAngular.hh
|
||||
Sending include/G4NeutronHPD2AInelasticFS.hh
|
||||
Sending include/G4NeutronHPDAInelasticFS.hh
|
||||
Sending include/G4NeutronHPDInelasticFS.hh
|
||||
Sending include/G4NeutronHPData.hh
|
||||
Sending include/G4NeutronHPDataPoint.hh
|
||||
Sending include/G4NeutronHPDataUsed.hh
|
||||
Sending include/G4NeutronHPDeExGammas.hh
|
||||
Sending include/G4NeutronHPDiscreteTwoBody.hh
|
||||
Sending include/G4NeutronHPElastic.hh
|
||||
Sending include/G4NeutronHPElasticData.hh
|
||||
Sending include/G4NeutronHPElasticFS.hh
|
||||
Sending include/G4NeutronHPElementData.hh
|
||||
Sending include/G4NeutronHPEnAngCorrelation.hh
|
||||
Sending include/G4NeutronHPEnergyDistribution.hh
|
||||
Sending include/G4NeutronHPEvapSpectrum.hh
|
||||
Sending include/G4NeutronHPFCFissionFS.hh
|
||||
Sending include/G4NeutronHPFFFissionFS.hh
|
||||
Sending include/G4NeutronHPFSFissionFS.hh
|
||||
Sending include/G4NeutronHPFastLegendre.hh
|
||||
Sending include/G4NeutronHPField.hh
|
||||
Sending include/G4NeutronHPFieldPoint.hh
|
||||
Sending include/G4NeutronHPFinalState.hh
|
||||
Sending include/G4NeutronHPFission.hh
|
||||
Sending include/G4NeutronHPFissionBaseFS.hh
|
||||
Sending include/G4NeutronHPFissionData.hh
|
||||
Sending include/G4NeutronHPFissionERelease.hh
|
||||
Sending include/G4NeutronHPFissionFS.hh
|
||||
Sending include/G4NeutronHPFissionSpectrum.hh
|
||||
Sending include/G4NeutronHPGamma.hh
|
||||
Sending include/G4NeutronHPHash.hh
|
||||
Sending include/G4NeutronHPHe3InelasticFS.hh
|
||||
Sending include/G4NeutronHPInelastic.hh
|
||||
Sending include/G4NeutronHPInelasticBaseFS.hh
|
||||
Sending include/G4NeutronHPInelasticCompFS.hh
|
||||
Sending include/G4NeutronHPInelasticData.hh
|
||||
Sending include/G4NeutronHPInterpolator.hh
|
||||
Sending include/G4NeutronHPIsoData.hh
|
||||
Sending include/G4NeutronHPIsotropic.hh
|
||||
Sending include/G4NeutronHPJENDLHEData.hh
|
||||
Sending include/G4NeutronHPJENDLHEElasticData.hh
|
||||
Sending include/G4NeutronHPJENDLHEInelasticData.hh
|
||||
Sending include/G4NeutronHPKallbachMannSyst.hh
|
||||
Sending include/G4NeutronHPLCFissionFS.hh
|
||||
Sending include/G4NeutronHPLabAngularEnergy.hh
|
||||
Sending include/G4NeutronHPLegendreStore.hh
|
||||
Sending include/G4NeutronHPLegendreTable.hh
|
||||
Sending include/G4NeutronHPLevel.hh
|
||||
Sending include/G4NeutronHPList.hh
|
||||
Sending include/G4NeutronHPMadlandNixSpectrum.hh
|
||||
Sending include/G4NeutronHPManager.hh
|
||||
Sending include/G4NeutronHPN2AInelasticFS.hh
|
||||
Sending include/G4NeutronHPN2PInelasticFS.hh
|
||||
Sending include/G4NeutronHPN3AInelasticFS.hh
|
||||
Sending include/G4NeutronHPNAInelasticFS.hh
|
||||
Sending include/G4NeutronHPNBodyPhaseSpace.hh
|
||||
Sending include/G4NeutronHPND2AInelasticFS.hh
|
||||
Sending include/G4NeutronHPNDInelasticFS.hh
|
||||
Sending include/G4NeutronHPNHe3InelasticFS.hh
|
||||
Sending include/G4NeutronHPNInelasticFS.hh
|
||||
Sending include/G4NeutronHPNPAInelasticFS.hh
|
||||
Sending include/G4NeutronHPNPInelasticFS.hh
|
||||
Sending include/G4NeutronHPNT2AInelasticFS.hh
|
||||
Sending include/G4NeutronHPNTInelasticFS.hh
|
||||
Sending include/G4NeutronHPNXInelasticFS.hh
|
||||
Sending include/G4NeutronHPNames.hh
|
||||
Sending include/G4NeutronHPNeutronYield.hh
|
||||
Sending include/G4NeutronHPPAInelasticFS.hh
|
||||
Sending include/G4NeutronHPPDInelasticFS.hh
|
||||
Sending include/G4NeutronHPPInelasticFS.hh
|
||||
Sending include/G4NeutronHPPTInelasticFS.hh
|
||||
Sending include/G4NeutronHPPartial.hh
|
||||
Sending include/G4NeutronHPPhotonDist.hh
|
||||
Sending include/G4NeutronHPPhotonXSection.hh
|
||||
Sending include/G4NeutronHPPolynomExpansion.hh
|
||||
Sending include/G4NeutronHPProduct.hh
|
||||
Sending include/G4NeutronHPReactionWhiteBoard.hh
|
||||
Sending include/G4NeutronHPSCFissionFS.hh
|
||||
Sending include/G4NeutronHPSimpleEvapSpectrum.hh
|
||||
Sending include/G4NeutronHPT2AInelasticFS.hh
|
||||
Sending include/G4NeutronHPTCFissionFS.hh
|
||||
Sending include/G4NeutronHPTInelasticFS.hh
|
||||
Sending include/G4NeutronHPThermalBoost.hh
|
||||
Sending include/G4NeutronHPThermalScattering.hh
|
||||
Sending include/G4NeutronHPThermalScatteringData.hh
|
||||
Sending include/G4NeutronHPThermalScatteringNames.hh
|
||||
Sending include/G4NeutronHPVector.hh
|
||||
Sending include/G4NeutronHPWattSpectrum.hh
|
||||
Sending include/G4ShiftedGaussian.hh
|
||||
Sending include/G4TableTemplate.hh
|
||||
Sending include/G4VNeutronHPEDis.hh
|
||||
Sending include/G4VNeutronHPEnergyAngular.hh
|
||||
Sending include/G4WattFissionSpectrumValues.hh
|
||||
Sending include/G4WendtFissionFragmentGenerator.hh
|
||||
Sending sources.cmake
|
||||
Sending src
|
||||
Sending src/G4NeutronHPCaptureFS.cc
|
||||
Sending src/G4NeutronHPChannel.cc
|
||||
Sending src/G4NeutronHPChannelList.cc
|
||||
Sending src/G4NeutronHPContAngularPar.cc
|
||||
Sending src/G4NeutronHPElasticFS.cc
|
||||
Sending src/G4NeutronHPFinalState.cc
|
||||
Sending src/G4NeutronHPFissionFS.cc
|
||||
Sending src/G4NeutronHPInelasticBaseFS.cc
|
||||
Sending src/G4NeutronHPInelasticCompFS.cc
|
||||
Sending src/G4NeutronHPIsotropic.cc
|
||||
Sending src/G4WendtFissionFragmentGenerator.cc
|
||||
Sending test
|
||||
Transmitting file data ...............
|
||||
Committed revision 75136.
|
||||
|
||||
Started all over - checked out trunk, switched to tag hadr-hpn-V09-06-17, switched to branch FissFragGen
|
||||
|
||||
============
|
||||
October 30, 2013
|
||||
============
|
||||
FissionFragmentGenerator::GenerateFission(int, const G4HadProjectile&) now verifies the projectile is a neutron
|
||||
|
||||
============
|
||||
October 31 - November 04, 2013
|
||||
============
|
||||
Converted ENDFTapeRead to read in the Geant4 ENDL data files
|
||||
Finished singleton object G4WendtFissionFragmentGenerator than manages the creation of isotope specific G4FissionFragmentGenerator/G4FissionProductYieldDist paired classes
|
||||
Completed integration into Neutron_HP model - TODO comments left in areas identified as needing future work
|
||||
|
||||
============
|
||||
November 5, 2013
|
||||
============
|
||||
Ran command: svn merge -r 75136:HEAD svn+ssh://bwendt@svn.cern.ch/reps/geant4/trunk/geant4/source/processes/hadronic/models/neutron_hp .
|
||||
|
||||
|
||||
============
|
||||
November 6, 2013
|
||||
============
|
||||
Tatsumi KOI
|
||||
Merging r67926 through r69414 into working copy
|
||||
by command
|
||||
svn merge -r 1:75649 svn+ssh://svn.cern.ch/reps/geant4/trunk/geant4/source/processes/hadronic/models/neutron_hp
|
||||
Solve all 21 conflictions by hands
|
||||
svn ci
|
||||
Sending .
|
||||
Sending CMakeLists.txt
|
||||
Sending FissFragGen.History
|
||||
Sending GNUmakefile
|
||||
Sending History
|
||||
Sending include
|
||||
Sending include/G4ArrayOps.hh
|
||||
Sending include/G4ENDFTapeRead.hh
|
||||
Sending include/G4ENDFYieldDataContainer.hh
|
||||
Sending include/G4FFGDebuggingMacros.hh
|
||||
Sending include/G4FFGDefaultValues.hh
|
||||
Sending include/G4FFGEnumerations.hh
|
||||
Sending include/G4FFGUPGAMessenger.hh
|
||||
Sending include/G4FFGUserPrimaryGeneratorAction.hh
|
||||
Sending include/G4FFGVerboseMacros.hh
|
||||
Sending include/G4FPYBiasedLightFragmentDist.hh
|
||||
Sending include/G4FPYNormalFragmentDist.hh
|
||||
Sending include/G4FPYNubarValues.hh
|
||||
Sending include/G4FPYSamplingOps.hh
|
||||
Sending include/G4FPYTreeStructures.hh
|
||||
Sending include/G4FissionFragmentGenerator.hh
|
||||
Sending include/G4FissionProductYieldDist.hh
|
||||
Sending include/G4InterpolationIterator.hh
|
||||
Sending include/G4InterpolationManager.hh
|
||||
Sending include/G4InterpolationScheme.hh
|
||||
Sending include/G4NeutronHP2AInelasticFS.hh
|
||||
Sending include/G4NeutronHP2N2AInelasticFS.hh
|
||||
Sending include/G4NeutronHP2NAInelasticFS.hh
|
||||
Sending include/G4NeutronHP2NDInelasticFS.hh
|
||||
Sending include/G4NeutronHP2NInelasticFS.hh
|
||||
Sending include/G4NeutronHP2NPInelasticFS.hh
|
||||
Sending include/G4NeutronHP2PInelasticFS.hh
|
||||
Sending include/G4NeutronHP3AInelasticFS.hh
|
||||
Sending include/G4NeutronHP3NAInelasticFS.hh
|
||||
Sending include/G4NeutronHP3NInelasticFS.hh
|
||||
Sending include/G4NeutronHP3NPInelasticFS.hh
|
||||
Sending include/G4NeutronHP4NInelasticFS.hh
|
||||
Sending include/G4NeutronHPAInelasticFS.hh
|
||||
Sending include/G4NeutronHPAngular.hh
|
||||
Sending include/G4NeutronHPAngularP.hh
|
||||
Sending include/G4NeutronHPArbitaryTab.hh
|
||||
Sending include/G4NeutronHPBGGNucleonInelasticXS.hh
|
||||
Sending include/G4NeutronHPCapture.hh
|
||||
Sending include/G4NeutronHPCaptureData.hh
|
||||
Sending include/G4NeutronHPCaptureFS.hh
|
||||
Sending include/G4NeutronHPChannel.hh
|
||||
Sending include/G4NeutronHPChannelList.hh
|
||||
Sending include/G4NeutronHPContAngularPar.hh
|
||||
Sending include/G4NeutronHPContEnergyAngular.hh
|
||||
Sending include/G4NeutronHPD2AInelasticFS.hh
|
||||
Sending include/G4NeutronHPDAInelasticFS.hh
|
||||
Sending include/G4NeutronHPDInelasticFS.hh
|
||||
Sending include/G4NeutronHPData.hh
|
||||
Sending include/G4NeutronHPDataPoint.hh
|
||||
Sending include/G4NeutronHPDataUsed.hh
|
||||
Sending include/G4NeutronHPDeExGammas.hh
|
||||
Sending include/G4NeutronHPDiscreteTwoBody.hh
|
||||
Sending include/G4NeutronHPElastic.hh
|
||||
Sending include/G4NeutronHPElasticData.hh
|
||||
Sending include/G4NeutronHPElasticFS.hh
|
||||
Sending include/G4NeutronHPElementData.hh
|
||||
Sending include/G4NeutronHPEnAngCorrelation.hh
|
||||
Sending include/G4NeutronHPEnergyDistribution.hh
|
||||
Sending include/G4NeutronHPEvapSpectrum.hh
|
||||
Sending include/G4NeutronHPFCFissionFS.hh
|
||||
Sending include/G4NeutronHPFFFissionFS.hh
|
||||
Sending include/G4NeutronHPFSFissionFS.hh
|
||||
Sending include/G4NeutronHPFastLegendre.hh
|
||||
Sending include/G4NeutronHPField.hh
|
||||
Sending include/G4NeutronHPFieldPoint.hh
|
||||
Sending include/G4NeutronHPFinalState.hh
|
||||
Sending include/G4NeutronHPFission.hh
|
||||
Sending include/G4NeutronHPFissionBaseFS.hh
|
||||
Sending include/G4NeutronHPFissionData.hh
|
||||
Sending include/G4NeutronHPFissionERelease.hh
|
||||
Sending include/G4NeutronHPFissionFS.hh
|
||||
Sending include/G4NeutronHPFissionSpectrum.hh
|
||||
Sending include/G4NeutronHPGamma.hh
|
||||
Sending include/G4NeutronHPHash.hh
|
||||
Sending include/G4NeutronHPHe3InelasticFS.hh
|
||||
Sending include/G4NeutronHPInelastic.hh
|
||||
Sending include/G4NeutronHPInelasticBaseFS.hh
|
||||
Sending include/G4NeutronHPInelasticCompFS.hh
|
||||
Sending include/G4NeutronHPInelasticData.hh
|
||||
Sending include/G4NeutronHPInterpolator.hh
|
||||
Sending include/G4NeutronHPIsoData.hh
|
||||
Sending include/G4NeutronHPIsotropic.hh
|
||||
Sending include/G4NeutronHPJENDLHEData.hh
|
||||
Sending include/G4NeutronHPJENDLHEElasticData.hh
|
||||
Sending include/G4NeutronHPJENDLHEInelasticData.hh
|
||||
Sending include/G4NeutronHPKallbachMannSyst.hh
|
||||
Sending include/G4NeutronHPLCFissionFS.hh
|
||||
Sending include/G4NeutronHPLabAngularEnergy.hh
|
||||
Sending include/G4NeutronHPLegendreStore.hh
|
||||
Sending include/G4NeutronHPLegendreTable.hh
|
||||
Sending include/G4NeutronHPLevel.hh
|
||||
Sending include/G4NeutronHPList.hh
|
||||
Sending include/G4NeutronHPMadlandNixSpectrum.hh
|
||||
Sending include/G4NeutronHPManager.hh
|
||||
Sending include/G4NeutronHPN2AInelasticFS.hh
|
||||
Sending include/G4NeutronHPN2PInelasticFS.hh
|
||||
Sending include/G4NeutronHPN3AInelasticFS.hh
|
||||
Sending include/G4NeutronHPNAInelasticFS.hh
|
||||
Sending include/G4NeutronHPNBodyPhaseSpace.hh
|
||||
Sending include/G4NeutronHPND2AInelasticFS.hh
|
||||
Sending include/G4NeutronHPNDInelasticFS.hh
|
||||
Sending include/G4NeutronHPNHe3InelasticFS.hh
|
||||
Sending include/G4NeutronHPNInelasticFS.hh
|
||||
Sending include/G4NeutronHPNPAInelasticFS.hh
|
||||
Sending include/G4NeutronHPNPInelasticFS.hh
|
||||
Sending include/G4NeutronHPNT2AInelasticFS.hh
|
||||
Sending include/G4NeutronHPNTInelasticFS.hh
|
||||
Sending include/G4NeutronHPNXInelasticFS.hh
|
||||
Sending include/G4NeutronHPNames.hh
|
||||
Sending include/G4NeutronHPNeutronYield.hh
|
||||
Sending include/G4NeutronHPPAInelasticFS.hh
|
||||
Sending include/G4NeutronHPPDInelasticFS.hh
|
||||
Sending include/G4NeutronHPPInelasticFS.hh
|
||||
Sending include/G4NeutronHPPTInelasticFS.hh
|
||||
Sending include/G4NeutronHPPartial.hh
|
||||
Sending include/G4NeutronHPPhotonDist.hh
|
||||
Sending include/G4NeutronHPPhotonXSection.hh
|
||||
Sending include/G4NeutronHPPolynomExpansion.hh
|
||||
Sending include/G4NeutronHPProduct.hh
|
||||
Sending include/G4NeutronHPReactionWhiteBoard.hh
|
||||
Sending include/G4NeutronHPSCFissionFS.hh
|
||||
Sending include/G4NeutronHPSimpleEvapSpectrum.hh
|
||||
Sending include/G4NeutronHPT2AInelasticFS.hh
|
||||
Sending include/G4NeutronHPTCFissionFS.hh
|
||||
Sending include/G4NeutronHPTInelasticFS.hh
|
||||
Sending include/G4NeutronHPThermalBoost.hh
|
||||
Sending include/G4NeutronHPThermalScattering.hh
|
||||
Sending include/G4NeutronHPThermalScatteringData.hh
|
||||
Sending include/G4NeutronHPThermalScatteringNames.hh
|
||||
Sending include/G4NeutronHPVector.hh
|
||||
Sending include/G4NeutronHPWattSpectrum.hh
|
||||
Sending include/G4ShiftedGaussian.hh
|
||||
Sending include/G4TableTemplate.hh
|
||||
Sending include/G4VNeutronHPEDis.hh
|
||||
Sending include/G4VNeutronHPEnergyAngular.hh
|
||||
Sending include/G4WattFissionSpectrumValues.hh
|
||||
Sending sources.cmake
|
||||
Sending src
|
||||
Sending src/G4NeutronHPAngular.cc
|
||||
Sending src/G4NeutronHPCapture.cc
|
||||
Sending src/G4NeutronHPCaptureData.cc
|
||||
Sending src/G4NeutronHPCaptureFS.cc
|
||||
Sending src/G4NeutronHPContAngularPar.cc
|
||||
Sending src/G4NeutronHPDeExGammas.cc
|
||||
Sending src/G4NeutronHPElasticData.cc
|
||||
Sending src/G4NeutronHPElasticFS.cc
|
||||
Sending src/G4NeutronHPElementData.cc
|
||||
Sending src/G4NeutronHPFFFissionFS.cc
|
||||
Sending src/G4NeutronHPFSFissionFS.cc
|
||||
Sending src/G4NeutronHPFissionBaseFS.cc
|
||||
Sending src/G4NeutronHPFissionData.cc
|
||||
Sending src/G4NeutronHPGamma.cc
|
||||
Sending src/G4NeutronHPInelasticBaseFS.cc
|
||||
Sending src/G4NeutronHPInelasticCompFS.cc
|
||||
Sending src/G4NeutronHPInelasticData.cc
|
||||
Sending src/G4NeutronHPIsoData.cc
|
||||
Sending src/G4NeutronHPIsotropic.cc
|
||||
Sending src/G4NeutronHPLabAngularEnergy.cc
|
||||
Sending src/G4NeutronHPList.cc
|
||||
Sending src/G4NeutronHPManager.cc
|
||||
Sending src/G4NeutronHPNames.cc
|
||||
Sending src/G4NeutronHPPhotonDist.cc
|
||||
Sending src/G4NeutronHPThermalScattering.cc
|
||||
Sending test
|
||||
Transmitting file data ................................................................
|
||||
Committed revision 75909.
|
||||
|
||||
============
|
||||
November 7, 2013
|
||||
============
|
||||
Tatsumi KOI
|
||||
Fix compilation errors on Windows platform
|
||||
ending FissFragGen.History
|
||||
Sending src/G4ENDFYieldDataContainer.cc
|
||||
Sending src/G4FPYSamplingOps.cc
|
||||
Sending src/G4FissionProductYieldDist.cc
|
||||
Transmitting file data ....
|
||||
Committed revision 76060.
|
||||
|
||||
Brycen Wendt
|
||||
Fixed data reading
|
||||
Still Seg Fault in G4FissionProductYieldDist::SampleNeutronEnergies() when running test11
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# $Id: GNUmakefile,v 1.4 2005-11-22 01:50:12 tkoi Exp $
|
||||
# $Id: GNUmakefile 77301 2013-11-22 11:09:07Z gcosmo $
|
||||
# -----------------------------------------------------------
|
||||
# GNUmakefile for hadronic library. Gabriele Cosmo, 18/9/96.
|
||||
# -----------------------------------------------------------
|
||||
@@ -35,7 +35,8 @@ CPPFLAGS += -I$(G4BASE)/global/management/include \
|
||||
-I$(G4BASE)/particles/hadrons/mesons/include \
|
||||
-I$(G4BASE)/particles/hadrons/barions/include \
|
||||
-I$(G4BASE)/particles/hadrons/ions/include \
|
||||
-I$(G4BASE)/materials/include
|
||||
-I$(G4BASE)/materials/include \
|
||||
-I$(G4BASE)/intercoms/include
|
||||
|
||||
include $(G4INSTALL)/config/common.gmk
|
||||
|
||||
|
||||
@@ -14,6 +14,206 @@ code and to keep track of all tags.
|
||||
* Please list in reverse chronological order (last date on top)
|
||||
---------------------------------------------------------------
|
||||
|
||||
21 November 2013 John Apostolakis (hadr-hpn-V09-06-24)
|
||||
Made the data arrays 'const' in place of G4ThreadLocal.
|
||||
in G4NeutronHPFastLegendre (and its subfiles)
|
||||
|
||||
|
||||
12 November 2013 Tatsumi Koi (hadr-hpn-V09-06-23)
|
||||
Fix compiler warnings:
|
||||
include/G4ENDFTapeRead.hh
|
||||
src/G4WendtFissionFragmentGenerator.cc
|
||||
src/G4ENDFTapeRead.cc
|
||||
|
||||
|
||||
10 November 2013 Tatsumi Koi (hadr-hpn-V09-06-22)
|
||||
Fix compiler warnings:
|
||||
src/G4WendtFissionFragmentGenerator.cc
|
||||
src/G4FPYBiasedLightFragmentDist.cc
|
||||
src/G4FPYSamplingOps.cc
|
||||
src/G4FissionProductYieldDist.cc
|
||||
Fix on problems on gnumake
|
||||
GNUmakefile
|
||||
|
||||
|
||||
8 November 2013 Tatsumi Koi (hadr-hpn-V09-06-21)
|
||||
Fix problem on Wendt model
|
||||
src/G4FPYSamplingOps.cc
|
||||
src/G4FissionProductYieldDist.cc
|
||||
src/G4FissionFragmentGenerator.cc
|
||||
src/G4WendtFissionFragmentGenerator.cc
|
||||
src/G4NeutronHPChannel.cc
|
||||
src/G4NeutronHPFission.cc
|
||||
|
||||
|
||||
8 November 2013 Tatsumi Koi (hadr-hpn-V09-06-20)
|
||||
Merging branch of "FissFragGen" for update of fix for windows platform and reading data file in Wendt model
|
||||
-%svn merge --dry-run -r 75913:76341 svn+ssh://svn.cern.ch/reps/geant4/branches/geant4/source/processes/hadronic/models/neutron_hp/_symbols/FissFragGen
|
||||
|
||||
|
||||
7 November 2013 Tatsumi Koi (hadr-hpn-V09-06-19)
|
||||
Merging branch of "FissFragGen" where fission fragments generator is developed
|
||||
-%svn merge -r 69414:75913 svn+ssh://svn.cern.ch/reps/geant4/branches/geant4/source/processes/hadronic/models/neutron_hp/_symbols/FissFragGen
|
||||
Please read FissFragGen.History for detail information
|
||||
|
||||
|
||||
31 October 2013 Tatsumi Koi (hadr-hpn-V09-06-18)
|
||||
-Fix problem on Windows platform to echo environment variable
|
||||
src/G4NeutronHPInelasticBaseFS.cc
|
||||
|
||||
|
||||
15 October 2013 Tatsumi Koi (hadr-hpn-V09-06-17)
|
||||
-Change G4ParticleTable::GetParticleTable()->GetIon(,,)
|
||||
to G4IonTable::GetIonTable()->GetIon(,,);
|
||||
src/G4NeutronHPFinalState.cc
|
||||
src/G4NeutronHPInelasticBaseFS.cc
|
||||
src/G4NeutronHPFissionFS.cc
|
||||
src/G4NeutronHPIsotropic.cc
|
||||
src/G4NeutronHPCaptureFS.cc
|
||||
src/G4NeutronHPChannelList.cc
|
||||
src/G4NeutronHPInelasticCompFS.cc
|
||||
src/G4NeutronHPElasticFS.cc
|
||||
src/G4NeutronHPContAngularPar.cc
|
||||
|
||||
|
||||
12 Jun 2013 Tatsumi Koi (hadr-hpn-V09-06-16)
|
||||
-Fix for warning message
|
||||
src/G4NeutronHPThermalScatteringData.cc
|
||||
|
||||
|
||||
10 Jun 2013 Tatsumi Koi (hadr-hpn-V09-06-15)
|
||||
-Fix "UNINIT", "FORWARD_NULL"
|
||||
src/G4NeutronHPThermalScattering.cc
|
||||
-Replace "abs" to "fabs"
|
||||
src/G4NeutronHPThermalScatteringData.cc
|
||||
|
||||
|
||||
7 Jun 2013 Tatsumi Koi (hadr-hpn-V09-06-14)
|
||||
-Fix for hadr-hpn-V09-06-13
|
||||
src/G4NeutronHPThermalScattering.cc
|
||||
-Fix for "INVALIDATE_ITERATOR"
|
||||
-Enable to use single temperature data file
|
||||
src/G4NeutronHPThermalScatteringData.cc
|
||||
-Fix for extrapolation problem reported by CIEMAT group
|
||||
src/G4NeutronHPThermalScattering.cc
|
||||
-Add trick for fixing problem in dynamically generated materials
|
||||
include/G4NeutronHPThermalScattering.hh
|
||||
src/G4NeutronHPThermalScattering.cc
|
||||
|
||||
|
||||
29 May 2013 Tatsumi Koi (hadr-hpn-V09-06-13)
|
||||
-Adding a capability register user prepared thermal scattering file
|
||||
include/G4NeutronHPThermalScatteringNames.hh
|
||||
include/G4NeutronHPThermalScatteringData.hh
|
||||
include/G4NeutronHPThermalScattering.hh
|
||||
src/G4NeutronHPThermalScatteringData.cc
|
||||
src/G4NeutronHPThermalScattering.cc
|
||||
src/G4NeutronHPThermalScatteringNames.cc
|
||||
|
||||
|
||||
28 May 2013 Tatsumi Koi (hadr-hpn-V09-06-12)
|
||||
-Adding a capability to disable adjustment of final state photons in capture
|
||||
Fix for Bugzilla #1279
|
||||
include/G4NeutronHPFinalState.hh
|
||||
src/G4NeutronHPCaptureFS.cc
|
||||
|
||||
|
||||
17 May 2013 Tatsumi Koi (hadr-hpn-V09-06-11)
|
||||
- Activate capability of reading zlibed data file
|
||||
src/G4NeutronHPManager.cc
|
||||
|
||||
|
||||
7 May 2013 Tatsumi Koi (hadr-hpn-V09-06-10)
|
||||
- Making GetVerboseLevel into const member function
|
||||
|
||||
|
||||
2 May 2013 Tatsumi Koi (hadr-hpn-V09-06-09)
|
||||
Add package-wide verbose level control
|
||||
Sharing one value on entire package
|
||||
include/G4NeutronHPManager.hh
|
||||
include/G4NeutronHPCapture.hh
|
||||
include/G4NeutronHPCaptureData.hh
|
||||
include/G4NeutronHPElastic.hh
|
||||
include/G4NeutronHPElasticData.hh
|
||||
include/G4NeutronHPFission.hh
|
||||
include/G4NeutronHPFissionData.hh
|
||||
include/G4NeutronHPInelastic.hh
|
||||
include/G4NeutronHPInelasticData.hh
|
||||
src/G4NeutronHPManager.cc
|
||||
src/G4NeutronHPCapture.cc
|
||||
src/G4NeutronHPCaptureData.cc
|
||||
src/G4NeutronHPElastic.cc
|
||||
src/G4NeutronHPElasticData.cc
|
||||
src/G4NeutronHPFission.cc
|
||||
src/G4NeutronHPFissionData.cc
|
||||
src/G4NeutronHPInelastic.cc
|
||||
src/G4NeutronHPInelasticData.cc
|
||||
Delete (Comment out) BuildPhysicsTable from constructor
|
||||
src/G4NeutronHPCaptureData.cc
|
||||
src/G4NeutronHPElasticData.cc
|
||||
src/G4NeutronHPFissionData.cc
|
||||
src/G4NeutronHPInelasticData.cc
|
||||
Construction for UR-14
|
||||
src/G4NeutronHPName.cc
|
||||
|
||||
|
||||
30 April 2013 Tatsumi Koi (hadr-hpn-V09-06-08)
|
||||
Fix UNINIT_CTOR "theBuffer"
|
||||
src/G4NeutronHPElementData.cc
|
||||
Replace std::cout to G4cout
|
||||
src/G4NeutronHPThermalScattering.cc
|
||||
|
||||
|
||||
16 April 2013 Tatsumi Koi (hadr-hpn-V09-06-07)
|
||||
Deactivate capability of reading zlibed G4NEUTRONHPDATA library
|
||||
src/G4NeutronHPManager.cc
|
||||
|
||||
|
||||
16 April 2013 Tatsumi Koi (hadr-hpn-V09-06-06)
|
||||
Merging branch of "hpz" which enable to read zlibed data files
|
||||
Step 1 merge trunk to the branch
|
||||
svn merge -r 67425:68410 svn+ssh://svn.cern.ch/reps/geant4/trunk/geant4/source/processes/hadronic/models/neutron_hp
|
||||
Step 2 merge the branch to trunk
|
||||
g4svn merge --branch hpz
|
||||
Step 3 restore test before commit
|
||||
svn update --force test
|
||||
Step 4
|
||||
svn commit
|
||||
|
||||
|
||||
26 March 2013 Ben Morgan (hadr-hpn-V09-06-05)
|
||||
- sources.cmake : Use new ZLIB variables for include paths and library
|
||||
links to allow transparent use of internal/external zlib.
|
||||
NB: The code does not use ZLIB at present, but this patch allows
|
||||
usage from now on as you require.
|
||||
|
||||
|
||||
12 March 2013 Dennis Wright (hadr-hpn-V09-06-04)
|
||||
- fix MacOS Clang compiler warnings:
|
||||
G4NeutronHPCapture.hh : remove unused private variable "it"
|
||||
G4NeutronHPCaptureFS.hh : remove unused private variables "theCurrentA"
|
||||
and "theCurrentZ"
|
||||
G4NeutronHPThermalScattering.hh : remove unused private variable "xSec"
|
||||
and "numEle"
|
||||
|
||||
|
||||
9 January 2013 Tatsumi Koi (hadr-hpn-V09-06-03)
|
||||
Fixed improper use of abort()
|
||||
src/G4NeutronHPThermalScattering.cc
|
||||
|
||||
|
||||
11 December 2012 Tatsumi Koi (hadr-hpn-V09-06-02)
|
||||
Delete HP or Low Energy Parameterization Models and data sets from sources.cmake
|
||||
|
||||
|
||||
6 December 2012 Tatsumi Koi (hadr-hpn-V09-06-01)
|
||||
Delete HP or Low Energy Parameterization Models and data sets from repository
|
||||
|
||||
|
||||
6 December 2012 Tatsumi Koi (hadr-hpn-V09-06-00)
|
||||
Delete legacy lines for cvs
|
||||
|
||||
|
||||
29 November 2012 Alberto Ribon (hadr-hpn-V09-05-26)
|
||||
Added protection against negative argument in square root
|
||||
src/G4NeutronHPInelasticCompFS.cc
|
||||
|
||||
@@ -0,0 +1,228 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
/*
|
||||
* File: G4ArrayOps.hh
|
||||
* Author: B. Wendt (wendbryc@isu.edu)
|
||||
*
|
||||
* Created on July 28, 2012, 16:08
|
||||
*/
|
||||
|
||||
// All the arrays that use the functions in this namespace MUST have a
|
||||
// [] (bracket) operator for element-wise access
|
||||
|
||||
#ifndef G4ARRAYOPS_HH
|
||||
#define G4ARRAYOPS_HH
|
||||
|
||||
#include <vector>
|
||||
|
||||
#include "globals.hh"
|
||||
|
||||
/** G4ArrayOps is a namespace that provides template functions for
|
||||
* performing basic arithmatic operations on any data type that
|
||||
* is accessed with the [] operator.
|
||||
*/
|
||||
namespace G4ArrayOps
|
||||
{
|
||||
/** Set's all the values in an array to a constant */
|
||||
template< class T >
|
||||
void Set( G4int Elements,
|
||||
T* To,
|
||||
T Value )
|
||||
{
|
||||
for(G4int position = 0; position < Elements; position++)
|
||||
{
|
||||
To[position] = Value;
|
||||
}
|
||||
}
|
||||
|
||||
/** Copy values from one array to another */
|
||||
template< class T >
|
||||
void Copy( G4int Elements,
|
||||
T* To,
|
||||
T* From )
|
||||
{
|
||||
for(G4int position = 0; position < Elements; position++)
|
||||
{
|
||||
To[position] = From[position];
|
||||
}
|
||||
}
|
||||
|
||||
/** Add two arrays together. If the second array is NULL then the
|
||||
* 'To' array is used as if the function were the += operator.
|
||||
*/
|
||||
template< class T >
|
||||
void Add( G4int Elements,
|
||||
T* To,
|
||||
T* A1,
|
||||
T* A2 = NULL )
|
||||
{
|
||||
if(A2 == NULL)
|
||||
{
|
||||
A2 = To;
|
||||
}
|
||||
|
||||
for(G4int position = 0; position < Elements; position++)
|
||||
{
|
||||
To[position] = A2[position] + A1[position];
|
||||
}
|
||||
}
|
||||
|
||||
/** Add a constant to an array. If the second array is NULL then the
|
||||
* 'To' array is used as if the function were the += operator.
|
||||
*/
|
||||
template< class T >
|
||||
void Add( G4int Elements,
|
||||
T* To,
|
||||
T A1,
|
||||
T* A2 = NULL )
|
||||
{
|
||||
if(A2 == NULL)
|
||||
{
|
||||
A2 = To;
|
||||
}
|
||||
|
||||
for(G4int position = 0; position < Elements; position++)
|
||||
{
|
||||
To[position] = A1 + A2[position];
|
||||
}
|
||||
}
|
||||
|
||||
/** Subtract an array from another. If the second array is NULL then the
|
||||
* 'To' array is used as if the function were the -= operator.
|
||||
*/
|
||||
template< class T >
|
||||
void Subtract( G4int Elements,
|
||||
T* To,
|
||||
T* Minuend,
|
||||
T* Subtrahend = NULL )
|
||||
{
|
||||
if(Subtrahend == NULL)
|
||||
{
|
||||
Subtrahend = Minuend;
|
||||
Minuend = To;
|
||||
}
|
||||
|
||||
for(G4int position = 0; position < Elements; position++)
|
||||
{
|
||||
To[position] = Minuend[position] - Subtrahend[position];
|
||||
}
|
||||
}
|
||||
|
||||
/** Multiply two arrays together. If the second array is NULL then the
|
||||
* 'To' array is used as if the function were the *= operator.
|
||||
*/
|
||||
template< class T >
|
||||
void Multiply( G4int Elements,
|
||||
T* To,
|
||||
T* M1,
|
||||
T* M2 = NULL )
|
||||
{
|
||||
if(M2 == NULL)
|
||||
{
|
||||
M2 = To;
|
||||
}
|
||||
|
||||
for(G4int position = 0; position < Elements; position++)
|
||||
{
|
||||
To[position] = M2[position] * M1[position];
|
||||
}
|
||||
}
|
||||
|
||||
/** Multiply an array by a constant. If the second array is NULL then the
|
||||
* 'To' array is used as if the function were the *= operator.
|
||||
*/
|
||||
template< class T >
|
||||
void Multiply( G4int Elements,
|
||||
T* To,
|
||||
T M1,
|
||||
T* M2 = NULL )
|
||||
{
|
||||
if(M2 == NULL)
|
||||
{
|
||||
M2 = To;
|
||||
}
|
||||
|
||||
for(G4int position = 0; position < Elements; position++)
|
||||
{
|
||||
To[position] = M2[position] * M1;
|
||||
}
|
||||
}
|
||||
|
||||
/** Divide an array by another. If the second array is NULL then the
|
||||
* 'To' array is used as if the function were the /= operator.
|
||||
*/
|
||||
template< class T >
|
||||
void Divide( G4int Elements,
|
||||
T* To,
|
||||
T* Numerator,
|
||||
T* Denominator = NULL )
|
||||
{
|
||||
if(Denominator == NULL)
|
||||
{
|
||||
Denominator = Numerator;
|
||||
Numerator = To;
|
||||
}
|
||||
|
||||
for(G4int position = 0; position < Elements; position++)
|
||||
{
|
||||
To[position] = Numerator[position] / Denominator[position];
|
||||
}
|
||||
}
|
||||
|
||||
/** Divide a constant by an array. If the second array is NULL then the
|
||||
* 'To' array is used as if the function were the /= operator.
|
||||
*/
|
||||
template< class T >
|
||||
void Divide( G4int Elements,
|
||||
T* To,
|
||||
T Numerator,
|
||||
T* Denominator = NULL )
|
||||
{
|
||||
if(Denominator == NULL)
|
||||
{
|
||||
Denominator = To;
|
||||
}
|
||||
|
||||
for(G4int position = 0; position < Elements; position++)
|
||||
{
|
||||
To[position] = Numerator / Denominator[position];
|
||||
}
|
||||
}
|
||||
|
||||
template< class T >
|
||||
void DeleteVectorOfPointers( std::vector< T >& Vector )
|
||||
{
|
||||
for(unsigned int i = 0; i < Vector.size(); i++)
|
||||
{
|
||||
delete Vector[i];
|
||||
}
|
||||
|
||||
delete &Vector;
|
||||
}
|
||||
}
|
||||
|
||||
#endif /** G4ARRAYOPS_HH */
|
||||
|
||||
@@ -0,0 +1,175 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
/*
|
||||
* File: G4ENDFTapeRead.hh
|
||||
* Author: B. Wendt (wendbryc@isu.edu)
|
||||
*
|
||||
* Created on September 6, 2011, 10:01 AM
|
||||
*/
|
||||
|
||||
#ifndef G4ENDFTAPEREAD_HH
|
||||
#define G4ENDFTAPEREAD_HH
|
||||
|
||||
#include "globals.hh"
|
||||
|
||||
#include "G4ENDFYieldDataContainer.hh"
|
||||
#include "G4FFGEnumerations.hh"
|
||||
#include "G4TableTemplate.hh"
|
||||
|
||||
/** G4ENDFTapeRead is a class designed to read in data from unformatted ENDF data
|
||||
* tapes for MT = 454 or MT = 459, which correspond to independent fission
|
||||
* yields and cumulative fission yields, respectively. The data is stored
|
||||
* internally and can be recalled one product at a time by calling
|
||||
* G4GetNextYield().
|
||||
*/
|
||||
class G4ENDFTapeRead
|
||||
{
|
||||
public:
|
||||
// Constructor definition
|
||||
/** Default constructor
|
||||
* - Usage:
|
||||
* - \p FileLocation: the absolute path to the file
|
||||
* - \p FileName: the name of the data file
|
||||
* - \p WhichYield: \p INDEPENDENT or \p CUMULATIVE
|
||||
* - \p WhichCause: \p SPONTANEOUS or \p N_INDUCED
|
||||
*
|
||||
* - Notes: The data will be read in immediately upon construction.
|
||||
*/
|
||||
G4ENDFTapeRead( G4String FileLocation,
|
||||
G4String FileName,
|
||||
G4FFGEnumerations::YieldType WhichYield,
|
||||
G4FFGEnumerations::FissionCause WhichCause );
|
||||
/** Overloaded constructor
|
||||
* - Usage:
|
||||
* - \p FileLocation: the absolute path to the file
|
||||
* - \p FileName: the name of the data file
|
||||
* - \p WhichYield: \p INDEPENDENT or \p CUMULATIVE
|
||||
* - \p WhichCause: \p SPONTANEOUS or \p N_INDUCED
|
||||
* - \p Verbosity: Verbosity level
|
||||
*
|
||||
* - Notes: The data will be read in immediately upon construction.
|
||||
*/
|
||||
G4ENDFTapeRead( G4String FileLocation,
|
||||
G4String FileName,
|
||||
G4FFGEnumerations::YieldType WhichYield,
|
||||
G4FFGEnumerations::FissionCause WhichCause,
|
||||
G4int Verbosity );
|
||||
/** Overloaded constructor
|
||||
* - Usage:
|
||||
* - \p DataFile: The absolute path to the data file
|
||||
* - \p WhichYield: \p INDEPENDENT or \p CUMULATIVE
|
||||
* - \p WhichCause: \p SPONTANEOUS or \p N_INDUCED
|
||||
* - \p Verbosity: Verbosity level
|
||||
*
|
||||
* - Notes: The data will be read in immediately upon construction.
|
||||
*/
|
||||
G4ENDFTapeRead( std::istringstream& dataStream,
|
||||
G4FFGEnumerations::YieldType WhichYield,
|
||||
G4FFGEnumerations::FissionCause WhichCause,
|
||||
G4int Verbosity );
|
||||
protected:
|
||||
/** Initialize is a common function called by all constructors. */
|
||||
void Initialize( G4String dataFile );
|
||||
/** Initialize is a common function calles by all constructors */
|
||||
void Initialize( std::istringstream& dataStream );
|
||||
|
||||
public:
|
||||
// Functions
|
||||
/** Returns and array containing the values of each of the energy groups
|
||||
* - Usage: No arguments required
|
||||
*
|
||||
* - Notes:
|
||||
*/
|
||||
G4double* G4GetEnergyGroupValues( void );
|
||||
/** Returns the number of energy yield groups that were extracted from the
|
||||
* ENDF tape file
|
||||
* - Usage: No arguments required
|
||||
*
|
||||
* - Notes:
|
||||
*/
|
||||
G4int G4GetNumberOfEnergyGroups( void );
|
||||
/** Returns the number of fission products that were extracted from the
|
||||
* ENDF tape file
|
||||
* - Usage: No arguments required
|
||||
*
|
||||
* - Notes:
|
||||
*/
|
||||
G4int G4GetNumberOfFissionProducts( void );
|
||||
/** Returns the data for the requested fission product
|
||||
* - Usage:
|
||||
* - \p WhichYield: 0-based index of the fission product for which to
|
||||
* get the yield data
|
||||
*
|
||||
* - Notes:
|
||||
* - This will return a pointer to the next G4FissionYieldContainer.
|
||||
* NULL will be returned if no more fission containers exist.
|
||||
*/
|
||||
G4ENDFYieldDataContainer* G4GetYield( G4int WhichYield );
|
||||
/** Sets the verbosity levels
|
||||
* - Usage:
|
||||
* - \p WhichVerbosity: Combination of levels
|
||||
*
|
||||
* - Notes:
|
||||
* - \p SILENT: All verbose output is repressed
|
||||
* - \p UPDATES: Only high-level internal changes are reported
|
||||
* - \p DAUGHTER_INFO: Displays information about daughter product sampling
|
||||
* - \p NEUTRON_INFO: Displays information about neutron sampling
|
||||
* - \p GAMMA_INFO: Displays information about gamma sampling
|
||||
* - \p ALPHA_INFO: Displays information about alpha sampling
|
||||
* - \p MOMENTUM_INFO: Displays information about momentum balancing
|
||||
* - \p EXTRAPOLATION_INTERPOLATION_INFO: Displays information about any data extrapolation or interpolation that occurs
|
||||
* - \p DEBUG: Reports program flow as it steps through functions
|
||||
* - \p PRINT_ALL: Displays any and all output
|
||||
*/
|
||||
void G4SetVerbosity( G4int WhatVerbosity );
|
||||
|
||||
private:
|
||||
// Functions
|
||||
/** Read in the data from an ENDF data tape. */
|
||||
void ReadInData( std::istringstream& dataStream );
|
||||
|
||||
// Data members
|
||||
/** Stores the number corresponding to the fission cause that will be extracted */
|
||||
//const G4FFGEnumerations::FissionCause Cause_;
|
||||
/** Counter for the number of energy groups that were extracted */
|
||||
G4int EnergyGroups_;
|
||||
/** Array containing the values of the extracted energy groups */
|
||||
G4double* EnergyGroupValues_;
|
||||
/** Verbosity level */
|
||||
G4int Verbosity_;
|
||||
/** Storage for the extracted data */
|
||||
G4TableTemplate< G4ENDFYieldDataContainer >* YieldContainerTable_;
|
||||
/** Stores the number corresponding to the yield type that will be extracted */
|
||||
const G4FFGEnumerations::YieldType YieldType_;
|
||||
|
||||
// Destructor function(s)
|
||||
public:
|
||||
/** Default Deconstructor */
|
||||
~G4ENDFTapeRead( void );
|
||||
};
|
||||
|
||||
#endif /* G4ENDFTAPEREAD_HH */
|
||||
|
||||
+96
@@ -0,0 +1,96 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
/*
|
||||
* File: G4ENDFYieldDataContainer.hh
|
||||
* Author: B. Wendt (wendbryc@isu.edu)
|
||||
*
|
||||
* Created on September 6, 2011, 10:19 AM
|
||||
*/
|
||||
|
||||
#ifndef G4ENDFYIELDDATACONTAINER_HH
|
||||
#define G4ENDFYIELDDATACONTAINER_HH
|
||||
|
||||
#include "globals.hh"
|
||||
|
||||
#include "G4FFGEnumerations.hh"
|
||||
|
||||
/** G4ENDFYieldDataContainer is a simple data storage class that handles
|
||||
* the memory management internally. One instance stores the information
|
||||
* for one fission product. In the event of a non-spontaneous fission, it
|
||||
* can store the yield probabilities and errors at each of the fission-
|
||||
* inducing particles energy levels. For ENDF data and neutron-induced
|
||||
* fission these energies are typically 0.0253 eV, 1 MeV, and 5 MeV.
|
||||
*/
|
||||
class G4ENDFYieldDataContainer
|
||||
{
|
||||
public:
|
||||
// Constructor
|
||||
/** Default constructor */
|
||||
G4ENDFYieldDataContainer ( G4int YieldSlots );
|
||||
|
||||
// Functions
|
||||
/** Get the meta state */
|
||||
G4FFGEnumerations::MetaState GetMetaState( void );
|
||||
/** Get the product */
|
||||
G4int GetProduct( void );
|
||||
/** Get the yield error */
|
||||
G4double* GetYieldError( void );
|
||||
/** Get the yield probability */
|
||||
G4double* GetYieldProbability( void );
|
||||
/** Get the number of yield slots */
|
||||
G4int GetYieldSlots( void );
|
||||
/** Set the meta state */
|
||||
void SetMetaState( G4FFGEnumerations::MetaState MetaState );
|
||||
/** Set the product */
|
||||
void SetProduct( G4int Product );
|
||||
/** Set the yield error */
|
||||
void SetYieldError( G4double* YieldError );
|
||||
/** Set the yield probability */
|
||||
void SetYieldProbability( G4double* YieldProbability );
|
||||
/** Set the number of yield slots */
|
||||
void SetYieldSlots( G4int NumberOfSlots );
|
||||
|
||||
protected:
|
||||
// Data members
|
||||
/** The number of energy groups, or yield slots, that are stored */
|
||||
G4int YieldSlots_;
|
||||
/** ZZZAAA identifier of the stored isotope */
|
||||
G4int Product_;
|
||||
/** Metastable state information of the stored isotope */
|
||||
G4FFGEnumerations::MetaState MetaState_;
|
||||
/** Array of yield probabilities, one per yield slot */
|
||||
G4double* YieldProbability_;
|
||||
/** Array of the yield probability errors, one per yield slot */
|
||||
G4double* YieldError_;
|
||||
|
||||
// Destructor function(s)
|
||||
public:
|
||||
/** Default deconstructor */
|
||||
~G4ENDFYieldDataContainer( void );
|
||||
};
|
||||
|
||||
#endif /* G4ENDFYIELDDATACONTAINER_HH */
|
||||
|
||||
@@ -0,0 +1,226 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
/*
|
||||
* File: G4FFGDebuggingMacros.hh
|
||||
* Author: B. Wendt (wendbryc@isu.edu)
|
||||
*
|
||||
* Created on August 17, 2012, 12:54
|
||||
*/
|
||||
|
||||
#ifndef G4FFGDEBUGGINGMACROS_HH
|
||||
#define G4FFGDEBUGGINGMACROS_HH
|
||||
|
||||
#include "globals.hh"
|
||||
|
||||
#include "G4FFGEnumerations.hh"
|
||||
#include "G4FFGVerboseMacros.hh"
|
||||
|
||||
// Define the function as available by the compiler
|
||||
#if defined(__GNUC__)
|
||||
#define G4FFG_FUNCTION_SIGNATURE__ G4String(__func__) + "()"
|
||||
#elif defined(_MSC_VER)
|
||||
// I'm not sure if this is the correct syntax for MS VC
|
||||
#define G4FFG_FUNCTION_SIGNATURE__ G4String(__FUNCTION__) + "()"
|
||||
#else
|
||||
#define G4FFG_FUNCTION_SIGNATURE__ "a function"
|
||||
#endif
|
||||
|
||||
// Only define the variables and macros if G4DEBUG_VERBOSE is set
|
||||
#if defined(G4DEBUG_VERBOSE)
|
||||
/** G4FFGDEBUG_RECURSIVE_REPRESSION is used to aid in the repression of
|
||||
* debugging messages from recursive function calls.
|
||||
*/
|
||||
extern G4long G4FFGDEBUG_RECURSIVE_REPRESSION;
|
||||
/** G4FFGDEBUG_RECURSIVE_REPRESSION_COUNTER tracks the number of recursive
|
||||
* function debugging messages were repressed.
|
||||
*/
|
||||
extern G4long G4FFGDEBUG_RECURSIVE_REPRESSION_COUNTER;
|
||||
/** G4FFGDEBUG_DATA_STRUCTURE_REPRESSION is used to aid in the repression of
|
||||
* debugging messages from functions that sort/access data elements.
|
||||
*/
|
||||
extern G4long G4FFGDEBUG_DATA_STRUCTURE_REPRESSION;
|
||||
/** G4FFGDEBUG_DATA_STRUCTURE_REPRESSION_COUNTER tracks the number of recursive
|
||||
* function debugging messages were repressed.
|
||||
*/
|
||||
extern G4long G4FFGDEBUG_DATA_STRUCTURE_REPRESSION_COUNTER;
|
||||
|
||||
// Entering functions
|
||||
/** G4FFG_FUNCTIONENTER__ is blank if G4DEBUG_VERBOSE is not defined at compile time.
|
||||
* Otherwise, it is used by the fission fragment code to notify when a function is
|
||||
* first entered.
|
||||
*/
|
||||
#define G4FFG_FUNCTIONENTER__ \
|
||||
if((Verbosity_ & G4FFGEnumerations::DEBUG) && !(Verbosity_ & G4FFGEnumerations::REPRESS_FUNCTION_ENTER_LEAVE_MESSAGES)) \
|
||||
{ \
|
||||
G4FFG_SPACING__ \
|
||||
G4cout << "Entering ";\
|
||||
G4FFG_LOCATION__ \
|
||||
G4cout << G4endl; \
|
||||
} \
|
||||
G4FFG_DEPTH++;
|
||||
|
||||
/** G4FFG_SAMPLING_FUNCTIONENTER__ wraps around G4FFG_FUNCTIONENTER__ and
|
||||
* can be used in conjunctions with
|
||||
* G4FFGEnumeration::REPRESS_RANDOM_SAMPLING_MESSAGES to repress debugging output
|
||||
* for psuedorandom number generation functions
|
||||
*/
|
||||
#define G4FFG_SAMPLING_FUNCTIONENTER__ \
|
||||
if(!(Verbosity_ & G4FFGEnumerations::REPRESS_RANDOM_SAMPLING_MESSAGES)) \
|
||||
{ \
|
||||
G4FFG_FUNCTIONENTER__ \
|
||||
}
|
||||
|
||||
/** G4FFG_RECURSIVE_FUNCTIONENTER__ wraps around G4FFG_FUNCTIONENTER__ and
|
||||
* can be used in conjunctions with
|
||||
* G4FFGEnumeration::REPRESS_RECURSIVE_DEBUG_MESSAGES to repress debugging output
|
||||
* recursive function calls.
|
||||
*/
|
||||
#define G4FFG_RECURSIVE_FUNCTIONENTER__ \
|
||||
if(Verbosity_ & G4FFGEnumerations::REPRESS_RECURSIVE_DEBUG_MESSAGES)\
|
||||
{ \
|
||||
if(G4FFGDEBUG_RECURSIVE_REPRESSION == 0) \
|
||||
{ \
|
||||
G4FFG_FUNCTIONENTER__ \
|
||||
} else \
|
||||
{ \
|
||||
G4FFGDEBUG_RECURSIVE_REPRESSION_COUNTER++; \
|
||||
} \
|
||||
G4FFGDEBUG_RECURSIVE_REPRESSION++; \
|
||||
} else \
|
||||
{ \
|
||||
G4FFG_FUNCTIONENTER__ \
|
||||
}
|
||||
|
||||
/** G4FFG_DATA_FUNCTIONENTER__ wraps around G4FFG_FUNCTIONENTER__ and
|
||||
* can be used in conjunctions with
|
||||
* G4FFGEnumeration::REPRESS_DATA_STRUCTURE_DEBUG_MESSAGES to repress debugging output
|
||||
* recursive function calls.
|
||||
*/
|
||||
#define G4FFG_DATA_FUNCTIONENTER__ \
|
||||
if(Verbosity_ & G4FFGEnumerations::REPRESS_DATA_STRUCTURE_DEBUG_MESSAGES)\
|
||||
{ \
|
||||
if(G4FFGDEBUG_RECURSIVE_REPRESSION == 0) \
|
||||
{ \
|
||||
G4FFG_FUNCTIONENTER__ \
|
||||
} else \
|
||||
{ \
|
||||
G4FFGDEBUG_DATA_STRUCTURE_REPRESSION_COUNTER++; \
|
||||
} \
|
||||
G4FFGDEBUG_RECURSIVE_REPRESSION++; \
|
||||
} else \
|
||||
{ \
|
||||
G4FFG_FUNCTIONENTER__ \
|
||||
}
|
||||
|
||||
// Leaving functions
|
||||
/** G4FFG_FUNCTIONLEAVE__ is blank if G4DEBUG_VERBOSE is not defined at compile time.
|
||||
* Otherwise, it is used by the fission fragment code to notify when a function is
|
||||
* exited. It will also be found before \p return statements, since those exit a
|
||||
* funtion as well.
|
||||
*/
|
||||
#define G4FFG_FUNCTIONLEAVE__ \
|
||||
G4FFG_DEPTH--; \
|
||||
if((Verbosity_ & G4FFGEnumerations::DEBUG) && !(Verbosity_ & G4FFGEnumerations::REPRESS_FUNCTION_ENTER_LEAVE_MESSAGES)) \
|
||||
{ \
|
||||
G4FFG_SPACING__ \
|
||||
G4cout << "Leaving ";\
|
||||
G4FFG_LOCATION__ \
|
||||
G4cout << G4endl; \
|
||||
}
|
||||
|
||||
/** G4FFG_SAMPLING_FUNCTIONLEAVE__ wraps around G4FFG_FUNCTIONLEAVE__ and
|
||||
* can be used in conjunctions with
|
||||
* G4FFGEnumeration::REPRESS_RANDOM_SAMPLING_MESSAGES to repress debugging output
|
||||
* for psuedorandom number generation functions
|
||||
*/
|
||||
#define G4FFG_SAMPLING_FUNCTIONLEAVE__ \
|
||||
if(!(Verbosity_ & G4FFGEnumerations::REPRESS_RANDOM_SAMPLING_MESSAGES)) \
|
||||
{ \
|
||||
G4FFG_FUNCTIONLEAVE__ \
|
||||
}
|
||||
|
||||
/** G4FFG_RECURSIVE_FUNCTIONLEAVE__ wraps around G4FFG_FUNCTIONLEAVE__ and
|
||||
* can be used in conjunctions with
|
||||
* G4FFGEnumeration::REPRESS_RECURSIVE_DEBUG_MESSAGES to repress debugging output
|
||||
* recursive function calls.
|
||||
*/
|
||||
#define G4FFG_RECURSIVE_FUNCTIONLEAVE__ \
|
||||
if(Verbosity_ & G4FFGEnumerations::REPRESS_RECURSIVE_DEBUG_MESSAGES)\
|
||||
{ \
|
||||
G4FFGDEBUG_RECURSIVE_REPRESSION--; \
|
||||
if(G4FFGDEBUG_RECURSIVE_REPRESSION == 0) \
|
||||
{ \
|
||||
if(G4FFGDEBUG_RECURSIVE_REPRESSION_COUNTER > 0) \
|
||||
{ \
|
||||
G4FFG_SPACING__ \
|
||||
G4cout << "==== " << G4FFGDEBUG_RECURSIVE_REPRESSION_COUNTER * 2 << " recursive function messages suppressed ====" << G4endl; \
|
||||
G4FFGDEBUG_RECURSIVE_REPRESSION_COUNTER = 0; \
|
||||
} \
|
||||
G4FFG_FUNCTIONLEAVE__ \
|
||||
} \
|
||||
} else \
|
||||
{ \
|
||||
G4FFG_FUNCTIONLEAVE__ \
|
||||
}
|
||||
|
||||
/** G4FFG_DATA_FUNCTIONLEAVE__ wraps around G4FFG_FUNCTIONLEAVE__ and
|
||||
* can be used in conjunctions with
|
||||
* G4FFGEnumeration::REPRESS_DATA_STRUCTURE_DEBUG_MESSAGES to repress debugging output
|
||||
* recursive function calls.
|
||||
*/
|
||||
#define G4FFG_DATA_FUNCTIONLEAVE__ \
|
||||
if(Verbosity_ & G4FFGEnumerations::REPRESS_DATA_STRUCTURE_DEBUG_MESSAGES)\
|
||||
{ \
|
||||
G4FFGDEBUG_RECURSIVE_REPRESSION--; \
|
||||
if(G4FFGDEBUG_RECURSIVE_REPRESSION == 0) \
|
||||
{ \
|
||||
if(G4FFGDEBUG_DATA_STRUCTURE_REPRESSION_COUNTER > 0) \
|
||||
{ \
|
||||
G4FFG_SPACING__ \
|
||||
G4cout << "==== " << G4FFGDEBUG_DATA_STRUCTURE_REPRESSION_COUNTER * 2 << " data structure function messages suppressed ====" << G4endl; \
|
||||
G4FFGDEBUG_DATA_STRUCTURE_REPRESSION_COUNTER = 0; \
|
||||
} \
|
||||
G4FFG_FUNCTIONLEAVE__ \
|
||||
} \
|
||||
} else \
|
||||
{ \
|
||||
G4FFG_FUNCTIONLEAVE__ \
|
||||
}
|
||||
#else /* G4DEBUG_VERBOSE */
|
||||
// If G4DEBUG_VERBOSE is not defined then we will need to define these macros but leave them empty
|
||||
// Except for G4FFG_FUNCTIONENTER__ and G4FFG_FUNCTIONLEAVE__, which will be used to track G4FFG_DEPTH
|
||||
#define G4FFG_FUNCTIONENTER__ G4FFG_DEPTH++;
|
||||
#define G4FFG_SAMPLING_FUNCTIONENTER__
|
||||
#define G4FFG_RECURSIVE_FUNCTIONENTER__
|
||||
#define G4FFG_DATA_FUNCTIONENTER__
|
||||
#define G4FFG_FUNCTIONLEAVE__ G4FFG_DEPTH--;
|
||||
#define G4FFG_SAMPLING_FUNCTIONLEAVE__
|
||||
#define G4FFG_RECURSIVE_FUNCTIONLEAVE__
|
||||
#define G4FFG_DATA_FUNCTIONLEAVE__
|
||||
#endif /* G4DEBUG_VERBOSE */
|
||||
|
||||
#endif /* G4FFGDEBUGGINGMACROS_HH */
|
||||
|
||||
@@ -0,0 +1,115 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
/*
|
||||
* File: G4FFGDefaultValues.hh
|
||||
* Author: B. Wendt (wendbryc@isu.edu)
|
||||
*
|
||||
* Created on August 10, 2012, 17:03
|
||||
*/
|
||||
|
||||
#ifndef G4FFGDEFAULTVALUES_HH
|
||||
#define G4FFGDEFAULTVALUES_HH
|
||||
|
||||
#include "G4SystemOfUnits.hh"
|
||||
#include "G4ThreeVector.hh"
|
||||
|
||||
#include "G4FFGEnumerations.hh"
|
||||
|
||||
/** G4FFGDefaultValues is a one-stop shop for storing the default values to
|
||||
* variables that configure how the fission fragment generator code is
|
||||
* initialized.
|
||||
*/
|
||||
namespace G4FFGDefaultValues
|
||||
{
|
||||
// Global
|
||||
/** The energy of thermal neutrons */
|
||||
static const G4double ThermalNeutronEnergy = 0.0253 * eV;
|
||||
|
||||
// Verbosity
|
||||
#ifdef G4DEBUG_VERBOSE
|
||||
/** Verbosity for the entire package */
|
||||
static const G4int Verbosity = G4FFGEnumerations::PRINT_ALL;// | G4FFGEnumerations::REPRESS_FUNCTION_ENTER_LEAVE_MESSAGES;
|
||||
#else /* G4DEBUG_VERBOSE */
|
||||
/** Verbosity for the entire package */
|
||||
static const G4FFGEnumerations::Verbosity Verbosity = G4FFGEnumerations::SILENT;
|
||||
#endif /* G4DEBUG_VERBOSE */
|
||||
|
||||
// Fission Parameters
|
||||
/** Default Isotope */
|
||||
static const G4int Isotope = 92238;
|
||||
/** Default meta state */
|
||||
static const G4FFGEnumerations::MetaState MetaState = G4FFGEnumerations::GROUND_STATE;
|
||||
/** Default fission cause */
|
||||
static const G4FFGEnumerations::FissionCause FissionCause = G4FFGEnumerations::SPONTANEOUS;
|
||||
/** Default incident energy */
|
||||
static const G4double IncidentEnergy = ThermalNeutronEnergy / eV;
|
||||
/** Default incident energy unit */
|
||||
static const char IncidentEnergyUnit[] = "eV";
|
||||
/** Default yield type */
|
||||
static const G4FFGEnumerations::YieldType YieldType = G4FFGEnumerations::INDEPENDENT;
|
||||
/** Default sampling scheme */
|
||||
static const G4FFGEnumerations::FissionSamplingScheme SamplingScheme = G4FFGEnumerations::NORMAL;
|
||||
/** Default probabilility of a ternary fission */
|
||||
static const G4double TernaryProbability = 0;
|
||||
/** Default alpha production in a ternary fission */
|
||||
static const G4double AlphaProduction = 0;
|
||||
/** Default mean gamma energy for gamma sampling */
|
||||
static const G4double MeanGammaEnergy = 800 * keV;
|
||||
|
||||
// Event Parameters
|
||||
/** Default event time */
|
||||
static const G4double EventTime = 0;
|
||||
/** Default event time units */
|
||||
static const char EventTimeUnit[] = "ns";
|
||||
|
||||
// Source Description
|
||||
/** Default source center */
|
||||
static const G4ThreeVector SourceCenter(0, 0, 0);
|
||||
/** Default source depth */
|
||||
static const G4double SourceDepth = 1;
|
||||
/** Default source rectangle Height */
|
||||
static const G4double SourceHeight = 1;
|
||||
/** Default source radius */
|
||||
static const G4double SourceRadius = 1;
|
||||
/** Default source rectangle Width */
|
||||
static const G4double SourceWidth = 1;
|
||||
/** Default event time units */
|
||||
static const char SourceDimensionUnit[] = "cm";
|
||||
/** Default source type */
|
||||
static const G4FFGEnumerations::SourceType SourceType = G4FFGEnumerations::SPHERE;
|
||||
|
||||
// Messenger
|
||||
/** Default command directory */
|
||||
static const char UICommandDirectory[] = "/process/hadronic/ffgupga";
|
||||
|
||||
// Data
|
||||
/** ENDF data tape location, reference against \p G4HPNEUTRONDATA */
|
||||
static const char ENDFFissionDataLocation[] = "/Fission/FF/";
|
||||
}
|
||||
|
||||
#endif /** G4FFGDEFAULTVALUES_HH */
|
||||
|
||||
|
||||
@@ -0,0 +1,130 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
/*
|
||||
* File: G4FFGEnumerations.hh
|
||||
* Author: B. Wendt (wendbryc@isu.edu)
|
||||
*
|
||||
* Created on June 6, 2011, 9:12 AM
|
||||
*/
|
||||
|
||||
#ifndef G4FFGENUMAERATIONS_HH
|
||||
#define G4FFGENUMAERATIONS_HH
|
||||
|
||||
/** G4FFGEnumerations is a namespace that contains all the enumerations that
|
||||
* are used in the fission fragment generator code.
|
||||
*/
|
||||
namespace G4FFGEnumerations
|
||||
{
|
||||
/** The two types of fission data available. Independent yields are taken
|
||||
* directly from prompt fission products, while cumulative fission yields are
|
||||
* taken some time after the fission event so that the products have had a
|
||||
* moment to stabilize.
|
||||
*/
|
||||
enum YieldType { INDEPENDENT = 454,
|
||||
CUMULATIVE = 459 };
|
||||
/** The first value of YieldType */
|
||||
static const G4int YieldTypeFirst = INDEPENDENT;
|
||||
/** The last value of YieldType */
|
||||
static const G4int YieldTypeLast = CUMULATIVE;
|
||||
|
||||
/** Causes of fission.
|
||||
* Currently only yields for spontaneous and neutron induced fission are
|
||||
* included in the data libraries. Photon and gamma induced fission are
|
||||
* included here only to provide potential forward compatibility.
|
||||
* <b> G4FissionFragmentGenerator::G4SetCause() must be modified if the data
|
||||
* sets are expanded to include photon and gamma induced fission. </b>
|
||||
*/
|
||||
enum FissionCause { SPONTANEOUS,
|
||||
NEUTRON_INDUCED,
|
||||
PROTON_INDUCED,
|
||||
GAMMA_INDUCED };
|
||||
/** The first value of FissionCause */
|
||||
static const G4int FissionCauseFirst = SPONTANEOUS;
|
||||
/** The last value of FissionCause.
|
||||
* This is set to NEUTRON_INDUCED becuase neither PROTON_INDUCED
|
||||
* nor GAMMA_INDUCED are currently supporded.
|
||||
*/
|
||||
static const G4int FissionCauseLast = NEUTRON_INDUCED;
|
||||
|
||||
/** The possible fission sampling methods */
|
||||
enum FissionSamplingScheme{ NORMAL,
|
||||
LIGHT_FRAGMENT };
|
||||
/** The first value of FissionSamplingScheme */
|
||||
static const G4int FissionSamplingSchemeFirst = NORMAL;
|
||||
/** The last value of FissionSamplingScheme */
|
||||
static const G4int FissionSamplingSchemeLast = LIGHT_FRAGMENT;
|
||||
|
||||
/** Truncate the Gaussian distribution at 0 (\p POSITIVE) or sample all values
|
||||
* (\p ALL)
|
||||
*/
|
||||
enum GaussianRange { POSITIVE,
|
||||
ALL };
|
||||
|
||||
/** Sample a discretized Gaussian distribution (\p INT) or continuous (\p DOUBLE) */
|
||||
enum GaussianReturnType { INT,
|
||||
DOUBLE };
|
||||
|
||||
/** ENDF format provides for 3 isomers - 1 ground state and 2 meta states */
|
||||
enum MetaState { GROUND_STATE,
|
||||
META_1,
|
||||
META_2 };
|
||||
/** The first value of MetaState */
|
||||
static const G4int MetaStateFirst = GROUND_STATE;
|
||||
/** The last value of MetaState */
|
||||
static const G4int MetaStateLast = META_2;
|
||||
|
||||
/** These are the source shapes available */
|
||||
enum SourceType { RECTANGLE,
|
||||
CYLINDER,
|
||||
SPHERE };
|
||||
/** The first value of SourceType */
|
||||
static const G4int SourceTypeFirst = RECTANGLE;
|
||||
/** The last value of SourceType */
|
||||
static const G4int SourceTypeLast = SPHERE;
|
||||
|
||||
/** These are the verbosity levels */
|
||||
enum Verbosity { SILENT = 0x0,
|
||||
UPDATES = 0x1,
|
||||
DAUGHTER_INFO = 0x2,
|
||||
NEUTRON_INFO = 0x4,
|
||||
GAMMA_INFO = 0x8,
|
||||
ALPHA_INFO = 0x10,
|
||||
MOMENTUM_INFO = 0x20,
|
||||
ENERGY_INFO = 0x40,
|
||||
EXTRAPOLATION_INTERPOLATION_INFO = 0x80,
|
||||
WARNING = 0x100,
|
||||
DEBUG = 0x200,
|
||||
PRINT_ALL = 0x3FF,
|
||||
REPRESS_FUNCTION_ENTER_LEAVE_MESSAGES = 0x1000,
|
||||
REPRESS_RANDOM_SAMPLING_MESSAGES = 0x2000,
|
||||
REPRESS_RECURSIVE_DEBUG_MESSAGES = 0x4000,
|
||||
REPRESS_DATA_STRUCTURE_DEBUG_MESSAGES = 0x8000 };
|
||||
/** This is the maximum value of Verbosity */
|
||||
static const G4int VerbosityLast = (REPRESS_DATA_STRUCTURE_DEBUG_MESSAGES << 1) - 1;
|
||||
}
|
||||
|
||||
#endif /* G4FFGENUMAERATIONS_HH */
|
||||
|
||||
+26
-26
@@ -23,35 +23,35 @@
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// 05-11-21 NeutronHP or Low Energy Parameterization Models
|
||||
// Implemented by T. Koi (SLAC/SCCS)
|
||||
// If NeutronHP data do not available for an element, then Low Energy
|
||||
// Parameterization models handle the interactions of the element.
|
||||
//
|
||||
/*
|
||||
* File: G4FFGVerboseMacros.hh
|
||||
* Author: B. Wendt (wendbryc@isu.edu)
|
||||
*
|
||||
* Created on August 24, 2012, 16:23
|
||||
*/
|
||||
|
||||
#ifndef G4NeutronHPorLCaptureModel_h
|
||||
#define G4NeutronHPorLCaptureModel_h 1
|
||||
#ifndef G4FFGVERBOSEMACROS_HH
|
||||
#define G4FFGVERBOSEMACROS_HH
|
||||
|
||||
#include "G4HadronicInteraction.hh"
|
||||
//#include "G4NeutronHPElastic.hh"
|
||||
#include "G4NeutronHPorLCapture.hh"
|
||||
#include "G4NeutronHPNames.hh"
|
||||
#include "G4LCapture.hh"
|
||||
#include "globals.hh"
|
||||
|
||||
class G4NeutronHPorLCaptureModel : public G4HadronicInteraction
|
||||
{
|
||||
public:
|
||||
G4NeutronHPorLCaptureModel();
|
||||
~G4NeutronHPorLCaptureModel();
|
||||
/** G4FFG_DEPTH is used to track the depth of the function calls in the
|
||||
* fission fragment generator code.
|
||||
*/
|
||||
extern G4long G4FFG_DEPTH;
|
||||
|
||||
G4HadFinalState * ApplyYourself(const G4HadProjectile& aTrack, G4Nucleus& aTargetNucleus);
|
||||
G4VCrossSectionDataSet* GiveHPXSectionDataSet() { return theHPCapture->GiveXSectionDataSet(); }
|
||||
/** G4FFG_LOCATION__ outputs the current location in the code */
|
||||
#define G4FFG_LOCATION__ \
|
||||
G4String debugOutput(__FILE__); \
|
||||
debugOutput = debugOutput.substr(debugOutput.find_last_of('/') + 1); \
|
||||
G4cout << G4FFG_FUNCTION_SIGNATURE__ << " at " << debugOutput << ":" << __LINE__;
|
||||
|
||||
private:
|
||||
G4NeutronHPorLCapture* theHPCapture;
|
||||
G4LCapture* theLCapture;
|
||||
/** G4FFG_SPACING__ indents the debug messages according to the debugging depth */
|
||||
#define G4FFG_SPACING__ \
|
||||
for(G4int depth = 0; depth < G4FFG_DEPTH; depth++) \
|
||||
{ \
|
||||
G4cout << " "; \
|
||||
}
|
||||
|
||||
#endif /* G4FFGVERBOSEMACROS_HH */
|
||||
|
||||
G4NeutronHPNames* theHPNames;
|
||||
};
|
||||
#endif
|
||||
+116
@@ -0,0 +1,116 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
/*
|
||||
* File: G4FPYBiasedLightFragmentDist.hh
|
||||
* Author: B. Wendt (wendbryc@isu.edu)
|
||||
*
|
||||
* Created on June 2, 2011, 11:02 AM
|
||||
*/
|
||||
|
||||
#ifndef G4FPYBIASEDLIGHTFRAGMENTDIST_HH
|
||||
#define G4FPYBIASEDLIGHTFRAGMENTDIST_HH
|
||||
|
||||
#include "G4Ions.hh"
|
||||
#include "globals.hh"
|
||||
|
||||
#include "G4FFGEnumerations.hh"
|
||||
#include "G4FissionProductYieldDist.hh"
|
||||
|
||||
/** G4FPYBiasedLightFragmentDist is an inherited class of G4FissionProductYield
|
||||
* that only samples the 'light' fission fragments, defined by A \< 115
|
||||
* - This inherited class of G4FissionProductYield samples only the lighter
|
||||
* fission fragments, defined by A \< 115
|
||||
* - This biasing was implemented because of an artifact that is introduced
|
||||
* due to random sampling of fission fragments. Typically small fission
|
||||
* fragments (neutrons, alphas, gammas) are sampled after the first
|
||||
* fragment is sampled. If a heavy fragment (A \>= 115) is sampled first
|
||||
* then the resulting lighter fission fragment, after all the other
|
||||
* particles have been removed from the available mass, will most likely
|
||||
* land far off the neutron drip line.
|
||||
* - This implementation reduces the probability that such an improbable
|
||||
* nucleus will be created by first sampling the lighter fission fragment
|
||||
* and allowing the heavy fission fragment, which has a lot more
|
||||
* flexibility for varying neutron populations, to make up the slack.
|
||||
*/
|
||||
class G4FPYBiasedLightFragmentDist
|
||||
: public G4FissionProductYieldDist
|
||||
{
|
||||
public:
|
||||
// Constructor definition
|
||||
/** Default constructor
|
||||
* - Usage:
|
||||
* - \p WhichIsotope: Isotope number of the element in ZZZAAA form
|
||||
* - \p WhichMetaState: \p GROUND_STATE, \p META_1, or \p META_2
|
||||
* - \p WhichCause: \p SPONTANEOUS or \p N_INDUCED
|
||||
* - \p WhichYieldType: \p INDEPENDENT or \p CUMULATIVE
|
||||
*
|
||||
* - Notes:
|
||||
*/
|
||||
G4FPYBiasedLightFragmentDist( G4int WhichIsotope,
|
||||
G4FFGEnumerations::MetaState WhichMetaState,
|
||||
G4FFGEnumerations::FissionCause WhichCause,
|
||||
G4FFGEnumerations::YieldType WhichYieldType,
|
||||
std::istringstream& dataStream);
|
||||
/** Overloaded constructor
|
||||
* - Usage:
|
||||
* - \p WhichIsotope: Isotope number of the element in ZZZAAA form
|
||||
* - \p WhichMetaState: \p GROUND_STATE, \p META_1, or \p META_2
|
||||
* - \p WhichCause: \p SPONTANEOUS or \p N_INDUCED
|
||||
* - \p WhichYieldType: \p INDEPENDENT or \p CUMULATIVE
|
||||
* - \p Verbosity: Verbosity level
|
||||
*
|
||||
* - Notes:
|
||||
*/
|
||||
G4FPYBiasedLightFragmentDist( G4int WhichIsotope,
|
||||
G4FFGEnumerations::MetaState WhichMetaState,
|
||||
G4FFGEnumerations::FissionCause WhichCause,
|
||||
G4FFGEnumerations::YieldType WhichYieldType,
|
||||
G4int Verbosity,
|
||||
std::istringstream& dataStream);
|
||||
protected:
|
||||
/** Initialize is a common function called by all constructors. */
|
||||
void Initialize( void );
|
||||
|
||||
protected:
|
||||
// Variables
|
||||
/** Defines the half-weight of the fission isotope */
|
||||
G4int HalfWeight_;
|
||||
// Functions
|
||||
/** Selects a fission product from the probability tree, limited by the
|
||||
* number of nucleons available to the system
|
||||
*/
|
||||
virtual G4Ions* GetFissionProduct( void );
|
||||
|
||||
// Destructor function(s)
|
||||
public:
|
||||
/** Default deconstructor. It is a virtual function since
|
||||
* G4FPYBiasedLightFragmentDist inherits from G4FissionProductYieldDist
|
||||
*/
|
||||
virtual ~G4FPYBiasedLightFragmentDist( void );
|
||||
};
|
||||
|
||||
#endif /* G4FPYBIASEDLIGHTFRAGMENTDIST_HH */
|
||||
|
||||
+101
@@ -0,0 +1,101 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
/*
|
||||
* File: G4FPYNormalFragmentDist.hh
|
||||
* Author: B. Wendt (wendbryc@isu.edu)
|
||||
*
|
||||
* Created on July 26, 2011, 12:26 PM
|
||||
*/
|
||||
|
||||
#ifndef G4FPYNORMALFRAGMENTDIST_HH
|
||||
#define G4FPYNORMALFRAGMENTDIST_HH
|
||||
|
||||
#include "G4Ions.hh"
|
||||
#include "globals.hh"
|
||||
|
||||
#include "G4FFGEnumerations.hh"
|
||||
#include "G4FissionProductYieldDist.hh"
|
||||
|
||||
/** G4FPYNormalFragmentDist is an inherited class of G4FissionProductYield
|
||||
* that samples fission fragments from the entire data set.
|
||||
*/
|
||||
class G4FPYNormalFragmentDist
|
||||
: public G4FissionProductYieldDist
|
||||
{
|
||||
public:
|
||||
// Constructor definition
|
||||
/** Default constructor
|
||||
* - Usage:
|
||||
* - \p WhichIsotope: Isotope number of the element in ZZZAAA form
|
||||
* - \p WhichMetaState: \p GROUND_STATE, \p META_1, or \p META_2
|
||||
* - \p WhichCause: \p SPONTANEOUS or \p N_INDUCED
|
||||
* - \p WhichYieldType: \p INDEPENDENT or \p CUMULATIVE
|
||||
*
|
||||
* - Notes:
|
||||
*/
|
||||
G4FPYNormalFragmentDist( G4int WhichIsotope,
|
||||
G4FFGEnumerations::MetaState WhichMetaState,
|
||||
G4FFGEnumerations::FissionCause WhichCause,
|
||||
G4FFGEnumerations::YieldType WhichYieldType,
|
||||
std::istringstream& dataFile);
|
||||
|
||||
/** Overloaded constructor
|
||||
* - Usage:
|
||||
* - \p WhichIsotope: Isotope number of the element in ZZZAAA form
|
||||
* - \p WhichMetaState: \p GROUND_STATE, \p META_1, or \p META_2
|
||||
* - \p WhichCause: \p SPONTANEOUS or \p N_INDUCED
|
||||
* - \p WhichYieldType: \p INDEPENDENT or \p CUMULATIVE
|
||||
* - \p Verbosity: Verbosity level
|
||||
*
|
||||
* - Notes:
|
||||
*/
|
||||
G4FPYNormalFragmentDist( G4int WhichIsotope,
|
||||
G4FFGEnumerations::MetaState WhichMetaState,
|
||||
G4FFGEnumerations::FissionCause WhichCause,
|
||||
G4FFGEnumerations::YieldType WhichYieldType,
|
||||
G4int Verbosity,
|
||||
std::istringstream& dataFile);
|
||||
protected:
|
||||
/** Initialize is a common function called by all constructors. */
|
||||
void Initialize( void );
|
||||
|
||||
protected:
|
||||
// Functions
|
||||
/** Selects a fission product from the probability tree, limited by the
|
||||
* number of nucleons available to the system.
|
||||
*/
|
||||
virtual G4Ions* GetFissionProduct( void );
|
||||
|
||||
// Destructor function(s)
|
||||
public:
|
||||
/** Default deconstructor. It is a virtual function since
|
||||
* G4FPYNormalFragmentDist inherits from G4FissionProductYieldDist
|
||||
*/
|
||||
virtual ~G4FPYNormalFragmentDist( void );
|
||||
};
|
||||
|
||||
#endif /* G4FPYNORMALFRAGMENTDIST_HH */
|
||||
|
||||
@@ -0,0 +1,155 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
/*
|
||||
* File: G4FPYNubarValues.hh
|
||||
* Author: B. Wendt (wendbryc@isu.edu)
|
||||
*
|
||||
* Created on July 11, 2011, 11:23 AM
|
||||
*/
|
||||
|
||||
/* * * * * * * * * * * * * * * * References * * * * * * * * * * * * * * * *
|
||||
* *
|
||||
* 1. "Neutron Multiplicity Measurements of Cf and Fm Isotopes", *
|
||||
* D. C. Hoffman, G. P. Ford, J. P. Balagna, and L. R. Veeser, Physical *
|
||||
* Review C, 21.2, February 1980 *
|
||||
* 2. "Spontaneous Fission Properties and Lifetime Systematics", *
|
||||
* D. C. Hoffman, International Conference on Fifty Years Research in *
|
||||
* Nuclear Fission, Berlin, Germany, 1989 *
|
||||
* 3. MCNP - A General Monte carlo N-Particle Transport Code, Version 5, *
|
||||
* X-5 Monte Carlo Team, Volume I: Overview and Theory, April, 2005 *
|
||||
* 4. ENDF database, Search parameters: ENDF/B-VII.0; MF=1; MAT=452 *
|
||||
* 5. Prompt Neutron Multiplicities for the Transplutonium Nuclides, *
|
||||
* N. E. Holden and M. S. Zucker, Brookhaven National Lab, January, 1985 *
|
||||
* *
|
||||
* * * * * * * * * * * * * * * * References * * * * * * * * * * * * * * * */
|
||||
|
||||
#ifndef G4FPYNUBARVALUES_HH
|
||||
#define G4FPYNUBARVALUES_HH
|
||||
|
||||
/** Evaluated nubar values for neutron induced fission. The data are represented
|
||||
* as linear regression fits from experimental data in the form: v = mx + b,
|
||||
* where x is the incident neutron energy.
|
||||
* \n \n Value 1: The isotope in ZZZAAA format
|
||||
* \n Value 2: 'x' of the linear regression fit multiplied by 10^13
|
||||
* \n Value 3: 'b' of the linear regression fit multiplied by 10^4
|
||||
* \n \n See Reference 4 for further information
|
||||
*/
|
||||
static const G4int NeutronInducedNubar_[][3] = {
|
||||
// Default
|
||||
{0, 1476773, 29881},
|
||||
// Thorium
|
||||
{90227, 818327, 20647}, {90229, 936480, 20872}, {90232, 1252285, 21061},
|
||||
// Proactinum
|
||||
{91231, 1030251, 22480},
|
||||
// Uranium
|
||||
{92232, 1070000, 31300}, {92233, 1218868, 25043},
|
||||
{92234, 1230006, 23673}, {92235, 1392331, 24336},
|
||||
{92236, 1353849, 23717}, {92237, 1502160, 24911},
|
||||
{92238, 1343405, 24911},
|
||||
// Neptunium
|
||||
{93237, 1485790, 26362}, {93238, 1476892, 25150},
|
||||
// Plutonium
|
||||
{94238, 1479368, 28950}, {94239, 1477500, 28505},
|
||||
{94240, 1518313, 28030}, {94241, 1496809, 29443},
|
||||
{94242, 1575406, 28100},
|
||||
// Americium
|
||||
{95241, 1425195, 30827}, {95242, 1337871, 32717},
|
||||
{95243, 1305739, 32737},
|
||||
// Curium
|
||||
{96242, 1720000, 34400}, {96243, 1220064, 34329},
|
||||
{96244, 1839123, 32444}, {96245, 1166218, 35968},
|
||||
{96246, 1223446, 36153}, {96248, 2080000, 34900},
|
||||
// Californium
|
||||
{98249, 1796326, 38876}, {98251, 2416144, 41400},
|
||||
// Einsteinium
|
||||
{99254, 2438676, 40832},
|
||||
// Fermium
|
||||
{100255, 2499442, 43924},
|
||||
// End of array
|
||||
{-1, -1, -1} };
|
||||
|
||||
/** Recommended Gaussian widths for neutron induced fission.
|
||||
* \n Column 1: The isotope in ZZZAAA format
|
||||
* \n Column 2: The width multiplied by 10^6
|
||||
* \n \n See Reference 3 for further information
|
||||
*/
|
||||
// Still need: a lot
|
||||
static const G4int NeutronInducedNubarWidth_[][2] = {
|
||||
// Default
|
||||
{0, 1210000},
|
||||
// Uranium
|
||||
{92233, 1144900}, {92235, 1183744}, {92238, 1245456},
|
||||
// Plutonium
|
||||
{94239, 1299600}, {94241, 1322500},
|
||||
// End of array
|
||||
{-1, -1} };
|
||||
|
||||
/** Evaluated nubar values for neutron induced fission. The data are represented
|
||||
* as linear regression fits from experimental data in the form: v = mx + b,
|
||||
* where x is the incident neutron energy.
|
||||
* \n \n Value 1: The isotope in ZZZAAA format
|
||||
* \n Value 2: 'x' of the linear regression fit multiplied by 10^13
|
||||
* \n Value 3: 'b' of the linear regression fit multiplied by 10^4
|
||||
* \n \n See References 1, 2, 4, & 5 for further information
|
||||
*/
|
||||
static const G4int SpontaneousNubar_[][3] = {
|
||||
// Default
|
||||
{0, 25000},
|
||||
// Uranium
|
||||
{92238, 0, 20000},
|
||||
// Curium
|
||||
{96244, 0, 26875}, {96246, 0, 29480}, {96248, 0, 31500},
|
||||
// Californium
|
||||
{98250, 0, 25200}, {98252, 0, 37676},
|
||||
// Einsteinium
|
||||
{99253, 0, 47000},
|
||||
// Fermium
|
||||
{100254, 0, 39800}, {100256, 0, 37300},
|
||||
// End of array
|
||||
{-1, -1, -1} };
|
||||
|
||||
/** Recommended Gaussian widths for neutron induced fission.
|
||||
* See Reference 3 for further information.
|
||||
* \n Column 1: The isotope in ZZZAAA format
|
||||
* \n Column 2: The width multiplied by 10^6
|
||||
*/
|
||||
// Still need: 92238, 99253
|
||||
static const G4int SpontaneousNubarWidth_[][2] = {
|
||||
// Default
|
||||
{0, 1210000},
|
||||
// Plutonium
|
||||
{94238, 1288225}, {94240, 1324801}, {94242, 1347921},
|
||||
// Curium
|
||||
{96242, 1190281}, {96244, 1216609}, {96246, 1205604}, {96248, 1227664},
|
||||
// Californium
|
||||
{98250, 1488400}, {98252, 1550025}, {98254, 1476225},
|
||||
// Fermium
|
||||
{100254, 1552516}, {100256, 1349007}, {100257, 1178983},
|
||||
// End of array
|
||||
{-1, -1} };
|
||||
|
||||
#endif /* G4FPYNUBARVALUES_HH */
|
||||
|
||||
@@ -0,0 +1,245 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
/*
|
||||
* File: G4FPYSamplingOps.hh
|
||||
* Author: B. Wendt (wendbryc@isu.edu)
|
||||
*
|
||||
* Created on June 30, 2011, 11:10 AM
|
||||
*/
|
||||
|
||||
/* * * * * * * * * * * * * * * * References * * * * * * * * * * * * * * * *
|
||||
* *
|
||||
* 1. "Sampling ENDL Watt Fission Spectra, D. E. Cullen, LLNL, April, 2004 *
|
||||
* *
|
||||
* * * * * * * * * * * * * * * * References * * * * * * * * * * * * * * * */
|
||||
|
||||
#ifndef G4FPYSAMPLINGOPS_HH
|
||||
#define G4FPYSAMPLINGOPS_HH
|
||||
|
||||
#include "Randomize.hh"
|
||||
#include "globals.hh"
|
||||
|
||||
#include "G4FFGEnumerations.hh"
|
||||
#include "G4ShiftedGaussian.hh"
|
||||
#include "G4WattFissionSpectrumValues.hh"
|
||||
|
||||
/** G4FPYSamplingOps performs all the uniform and Gaussian distribution sampling
|
||||
* operations
|
||||
*/
|
||||
class G4FPYSamplingOps
|
||||
{
|
||||
public:
|
||||
// Constructor definition
|
||||
/** Default constructor
|
||||
* - Usage: No arguments required
|
||||
* - Notes:
|
||||
*/
|
||||
G4FPYSamplingOps( void );
|
||||
/** Overloaded constructor
|
||||
* - Usage:
|
||||
* - \p Verbosity: Verbosity level
|
||||
* - Notes:
|
||||
*/
|
||||
G4FPYSamplingOps( G4int Verbosity );
|
||||
protected:
|
||||
/** Initialize is a common function called by all constructors. */
|
||||
void Initialize( void );
|
||||
|
||||
public:
|
||||
// Functions
|
||||
/** Returns an integer value taken from a Gaussian distribution.
|
||||
* This overloaded version assumes that the range is not restricted to
|
||||
* positive values only.
|
||||
* - Usage:
|
||||
* - \p Mean: Mean about which the Gaussian distribution will be
|
||||
* sampled
|
||||
* - \p StdDev: Standard deviation of the Gaussian distribution. 68.3%
|
||||
* of the values will lie within the first standard deviation, 95.4%
|
||||
* within the second standard deviation, etc...
|
||||
* - Notes:
|
||||
*/
|
||||
G4int G4SampleIntegerGaussian( G4double Mean,
|
||||
G4double StdDev );
|
||||
/** Returns an integer value taken from a Gaussian distribution about
|
||||
* \p Mean and with a standard deviation of \p StdDev.
|
||||
* - Usage:
|
||||
* - \p Mean: Mean about which the Gaussian distribution will be
|
||||
* sampled
|
||||
* - \p StdDev: Standard deviation of the Gaussian distribution. 68.3%
|
||||
* of the values will lie within the first standard deviation, 95.4%
|
||||
* within the second standard deviation, etc...
|
||||
* - \p Range: \p POSITIVE or \p ALL
|
||||
* - Notes:
|
||||
*/
|
||||
G4int G4SampleIntegerGaussian( G4double Mean,
|
||||
G4double StdDev,
|
||||
G4FFGEnumerations::GaussianRange Range );
|
||||
/** Returns a double value taken from a Gaussian distribution about \p Mean
|
||||
* and with a standard deviation of \p StdDev.
|
||||
* - Usage:
|
||||
* - \p Mean: Mean about which the Gaussian distribution will be
|
||||
* sampled
|
||||
* - \p StdDev: Standard deviation of the Gaussian distribution. 68.3%
|
||||
* of the values will lie within the first standard deviation, 95.4%
|
||||
* within the second standard deviation, etc...
|
||||
* - Notes:
|
||||
*/
|
||||
G4double G4SampleGaussian( G4double Mean,
|
||||
G4double StdDev );
|
||||
/** Returns a double value taken from a Gaussian distribution about \p Mean
|
||||
* and with a standard deviation of \p StdDev.
|
||||
* - Usage:
|
||||
* - \p Mean: Mean about which the Gaussian distribution will be
|
||||
* sampled
|
||||
* - \p StdDev: Standard deviation of the Gaussian distribution. 68.3%
|
||||
* of the values will lie within the first standard deviation, 95.4%
|
||||
* within the second standard deviation, etc...
|
||||
* - \p Range: \p POSITIVE or \p ALL
|
||||
* - Notes:
|
||||
*/
|
||||
G4double G4SampleGaussian( G4double Mean,
|
||||
G4double StdDev,
|
||||
G4FFGEnumerations::GaussianRange Range );
|
||||
/** Returns a double value evenly distributed in the range (0, 1].
|
||||
* - Usage: No arguments required
|
||||
* - Notes:
|
||||
*/
|
||||
G4double G4SampleUniform( void );
|
||||
/** Returns a double value evenly distributed in the range
|
||||
* (\p Lower, \p Upper].
|
||||
* - Usage:
|
||||
* - \p Lower: Lower bounds of the distribution
|
||||
* - \p Upper: Upper bounds of the distribution
|
||||
*
|
||||
* - Notes:
|
||||
*/
|
||||
G4double G4SampleUniform( G4double Lower,
|
||||
G4double Upper );
|
||||
/** Samples the Watt fission spectrum for the selected isotope, using an
|
||||
* algorithm adopted from Ref. 1
|
||||
* - Usage:
|
||||
* - \p WhatIsotope: The isotope that is to be sampled
|
||||
* - \p WhatCause: The cause of the isotope to be sampled
|
||||
* - \p WhatEnergy: The energy, in MeV of the incident particle
|
||||
* - Notes:
|
||||
* - All variables needed for this function are grouped together in
|
||||
* WattConstants_.
|
||||
* -
|
||||
*/
|
||||
G4double G4SampleWatt( G4int WhatIsotope,
|
||||
G4FFGEnumerations::FissionCause WhatCause,
|
||||
G4double WhatEnergy );
|
||||
/** Sets the verbosity levels
|
||||
* - Usage:
|
||||
* - \p WhichVerbosity: Combination of levels
|
||||
*
|
||||
* - Notes:
|
||||
* - \p SILENT: All verbose output is repressed
|
||||
* - \p UPDATES: Only high-level internal changes are reported
|
||||
* - \p DAUGHTER_INFO: Displays information about daughter product sampling
|
||||
* - \p NEUTRON_INFO: Displays information about neutron sampling
|
||||
* - \p GAMMA_INFO: Displays information about gamma sampling
|
||||
* - \p ALPHA_INFO: Displays information about alpha sampling
|
||||
* - \p MOMENTUM_INFO: Displays information about momentum balancing
|
||||
* - \p EXTRAPOLATION_INTERPOLATION_INFO: Displays information about any data extrapolation or interpolation that occurs
|
||||
* - \p DEBUG: Reports program flow as it steps through functions
|
||||
* - \p PRINT_ALL: Displays any and all output
|
||||
*/
|
||||
void G4SetVerbosity( G4int WhatVerbosity );
|
||||
|
||||
protected:
|
||||
// Variables
|
||||
// Class descriptor variables
|
||||
/** Mean for sampling a Gaussian distribution */
|
||||
G4double Mean_;
|
||||
/** Standard deviation for sampling a GaussianDistribution */
|
||||
G4double StdDev_;
|
||||
/** Structure chain that contains the all the previous values used
|
||||
* for sampling a Gaussian distribution
|
||||
*/
|
||||
G4ShiftedGaussian* ShiftedGaussianValues_;
|
||||
/** Verbosity level */
|
||||
G4int Verbosity_;
|
||||
/** Structure that contains the values for sampling the Watt fission
|
||||
* spectrum
|
||||
*/
|
||||
WattSpectrumConstants* WattConstants_;
|
||||
|
||||
// Pointers to external classes
|
||||
/** Pointer to the CLHEP random number generator. */
|
||||
CLHEP::HepRandomEngine* RandomEngine_;
|
||||
|
||||
// Internal variables for use with sampling a Gaussian distribution.
|
||||
/** Declares whether the second paired random number has been already
|
||||
* returned.
|
||||
*/
|
||||
G4bool NextGaussianIsStoredInMemory_;
|
||||
/** Contains the first of the two paired random numbers from the
|
||||
* Gaussian distribution sampling.
|
||||
*/
|
||||
G4double GaussianOne_;
|
||||
/** Contains the second of the two paired random numbers from the
|
||||
* Gaussian distribution sampling.
|
||||
*/
|
||||
G4double GaussianTwo_;
|
||||
/** Defines the tolerance that ShiftParameters() must match. */
|
||||
G4double Tolerance_;
|
||||
// Functions
|
||||
/** Check to see if the user requested parameters have already been
|
||||
* calculated. If they have, it recalls the stored parameters and sets
|
||||
* them as the current values.
|
||||
*/
|
||||
G4bool CheckAndSetParameters( void );
|
||||
/** Evaluates the constants that are required for the Watt fission spectrum
|
||||
* sampling.
|
||||
*/
|
||||
void EvaluateWattConstants( void );
|
||||
/** Samples a Gaussian distribution defined by the internal class variables
|
||||
* NewMean_ and NewStdDev_.
|
||||
*/
|
||||
G4double SampleGaussian( void );
|
||||
/** Sets the mean and standard deviation of the Gaussian distribution
|
||||
* sampled by this class when \p POSITIVE values are requested.
|
||||
* ShiftMean() performs two different operations based on the requested
|
||||
* data type.
|
||||
* - \p INTEGER: Iteratively searches for an adjusted mean that produces
|
||||
* the same result as the mean requested by the implementor. In this
|
||||
* instance the standard deviation is not adjusted.
|
||||
* - \p DOUBLE: Adjusts the standard deviation of the Gaussian distribution
|
||||
* so that the first seven standard deviations occur are all positive.
|
||||
* The chance that a negative value will result using this method is
|
||||
* 2.56E<sup>-12</sup>
|
||||
*/
|
||||
void ShiftParameters( G4FFGEnumerations::GaussianReturnType Type );
|
||||
|
||||
// Destructor function(s)
|
||||
public:
|
||||
/** Default deconstructor. */
|
||||
~G4FPYSamplingOps( void );
|
||||
};
|
||||
|
||||
#endif /* G4FPYSAMPLINGOPS_HH */
|
||||
|
||||
@@ -0,0 +1,92 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
/*
|
||||
* File: G4FPYTreeStructures.hh
|
||||
* Author: B. Wendt (wendbryc@isu.edu)
|
||||
*
|
||||
* Created on September 8, 2011, 10:43 AM
|
||||
*/
|
||||
|
||||
#ifndef G4FPYTREESTRUCTURES_HH
|
||||
#define G4FPYTREESTRUCTURES_HH
|
||||
|
||||
#include "G4Ions.hh"
|
||||
#include "globals.hh"
|
||||
|
||||
/** ProbabilityBranch is a tree hierarchy storage method. Each 'branch'
|
||||
* stores information for the isotope/isomer that is stores, as well as the
|
||||
* probability segment in the (0,1] range references it for use in random
|
||||
* fission product sampling.
|
||||
* \n ProbabilityBranch branches 'up' and 'down' to other branches that
|
||||
* have a probability segment either higher or lower in the (0,1] range.
|
||||
*/
|
||||
struct ProbabilityBranch
|
||||
{
|
||||
/** Pointer to the \p G4Ions definition that contains the data for
|
||||
* the isotope/isomer for this ProbabilityBranch
|
||||
*/
|
||||
G4Ions* Particle;
|
||||
|
||||
/** Number of different incident energies are available */
|
||||
G4int IncidentEnergiesCount;
|
||||
/** The different energies available */
|
||||
G4double* IncidentEnergies;
|
||||
/** The upper limit of the probability segment, indexed by incident energy*/
|
||||
G4double* ProbabilityRangeBottom;
|
||||
/** The lower limit of the probability segment, indexed by incident energy */
|
||||
G4double* ProbabilityRangeTop;
|
||||
|
||||
/** Pointer to the branch that has a higher probability */
|
||||
ProbabilityBranch* Right;
|
||||
/** Pointer to the branch that has a lower probability */
|
||||
ProbabilityBranch* Left;
|
||||
};
|
||||
|
||||
/** ProbabilityTree is the 'root' for each tree hierarchy, and contains
|
||||
* pointer to the first ProbabilityBranch, or 'trunk', or each tree.
|
||||
* \n ProbabilityTree also stores the value of the highest probability
|
||||
* segment that is stored in the tree. This enables trees that are out of
|
||||
* range to be easily skipped over.
|
||||
*/
|
||||
struct ProbabilityTree
|
||||
{
|
||||
/** Number of different incident energies are available */
|
||||
static G4int IncidentEnergiesCount;
|
||||
/** The different energies available */
|
||||
static G4double* IncidentEnergies;
|
||||
|
||||
/** First branch, or 'trunk', in the tree */
|
||||
ProbabilityBranch* Trunk;
|
||||
/** The value of the highest probability segment stored in this tree */
|
||||
G4double* ProbabilityRangeEnd;
|
||||
/** Counter for the number of branches that this tree has **/
|
||||
G4int BranchCount;
|
||||
/** Variable to identify if this is the last tree in or not */
|
||||
G4bool IsEnd;
|
||||
};
|
||||
|
||||
#endif /* G4FPYTREESTRUCTURES_HH */
|
||||
|
||||
+287
@@ -0,0 +1,287 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
/*
|
||||
* File: G4FissionFragmentGenerator.hh
|
||||
* Author: B. Wendt (wendbryc@isu.edu)
|
||||
*
|
||||
* Created on May 11, 2011, 12:04 PM
|
||||
*/
|
||||
|
||||
#ifndef G4FISSIONFRAGMENTGENERATOR_HH
|
||||
#define G4FISSIONFRAGMENTGENERATOR_HH
|
||||
|
||||
#include "G4Ions.hh"
|
||||
#include "globals.hh"
|
||||
#include "G4HadFinalState.hh"
|
||||
#include "G4HadProjectile.hh"
|
||||
|
||||
#include "G4FFGEnumerations.hh"
|
||||
#include "G4FissionProductYieldDist.hh"
|
||||
#include "G4TableTemplate.hh"
|
||||
|
||||
/** G4FissionFragmentGenerator is the front end class to be used by the user for
|
||||
* handling all fission event generation.
|
||||
*
|
||||
* This class is intended to be instantiated for one type of fission event for
|
||||
* as specific isotope/isomer, fission type, and incident neutron energy. For
|
||||
* this reason no functions exist to change or modify these values once the
|
||||
* class in constructed. A new class must be created by the user for each type
|
||||
* of fission event, if such functionality is desired.
|
||||
*/
|
||||
class G4FissionFragmentGenerator{
|
||||
public:
|
||||
// Constructor definition
|
||||
/** Default constructor
|
||||
* - Usage: No arguments required
|
||||
*
|
||||
* - Notes:
|
||||
* - There are methods that should be called to set operating
|
||||
* parameters before generating any fission events with
|
||||
* G4FissionFragmentGenerator. These are:
|
||||
* - G4SetIsotope()
|
||||
* - G4SetMetaState()
|
||||
* - G4SetCause()
|
||||
* - G4SetIncidentEnergy()
|
||||
* - G4SetYieldType()
|
||||
* - G4SetAlphaProduction()
|
||||
* - G4SetAlphaProductionProbability()
|
||||
* - G4SetSamplingScheme()
|
||||
* - If any or all of these parameters are not set by the user, then
|
||||
* default values will be used.
|
||||
* - Isotope: \p 92238
|
||||
* - Metastable state: \p GROUND_STATE
|
||||
* - Cause: \p SPONTANEOUS
|
||||
* - Incident energy: \p 0.025 eV
|
||||
* - Yield type: \p INDEPENDENT
|
||||
* - Alpha production: \p 0
|
||||
* - Alpha production probability: \p 0
|
||||
* - Sampling scheme: \p NORMAL
|
||||
*/
|
||||
G4FissionFragmentGenerator( void );
|
||||
/** Overloaded constructor
|
||||
* - Usage:
|
||||
* - \p Verbosity: Verbosity level
|
||||
*
|
||||
* - Notes:
|
||||
- Refer to the documentation for the default constructor for
|
||||
* setting up the operating parameters.
|
||||
*/
|
||||
G4FissionFragmentGenerator( G4int Verbosity );
|
||||
protected:
|
||||
/** Initialize is a common function called by all constructors. */
|
||||
void Initialize( void );
|
||||
|
||||
public:
|
||||
// Functions
|
||||
/** Generates a single fission event
|
||||
* - Usage: No arguments required
|
||||
*
|
||||
* - Notes:
|
||||
* - Generates a single fission event by calling the overloaded function
|
||||
* and passing an argument of '1'
|
||||
*/
|
||||
G4DynamicParticleVector* G4GenerateFission( void );
|
||||
/** Generates a single fission event
|
||||
* - Usage:
|
||||
* -\p Projectile: G4HadProjectile of the fission-inducing particle
|
||||
*
|
||||
* - Notes:
|
||||
* - Generates a single fission event by calling the overloaded function
|
||||
* and passing an argument of '1'
|
||||
*/
|
||||
G4DynamicParticleVector* G4GenerateFission( const G4HadProjectile& Projectile );
|
||||
/** Generates NumberOfFissions fission events
|
||||
* - Usage:
|
||||
* -\p NumberOfFissions: The number of fission events to generate
|
||||
*
|
||||
* - Notes:
|
||||
* - Generates \p NumberOfFissions fission events
|
||||
*/
|
||||
const std::vector< G4DynamicParticleVector* > G4GenerateFission( G4long NumberOfFissions,
|
||||
const G4HadProjectile& Projectile );
|
||||
/** Returns a randomly sampled fission product */
|
||||
G4Ions* G4GenerateFissionProduct( void );
|
||||
/** Returns the production rate of alpha particles for fission events */
|
||||
G4double G4GetAlphaProduction( void );
|
||||
/** Returns the probability of ternary fission */
|
||||
G4double G4GetTernaryProbability( void );
|
||||
/** Returns the FissionCause of the fission event. */
|
||||
G4FFGEnumerations::FissionCause G4GetCause( void );
|
||||
/** Returns the energy of the fission inducing particle. */
|
||||
G4double G4GetIncidentEnergy( void );
|
||||
/** Returns the code of the fission isotope in ZZZAAA format. */
|
||||
G4int G4GetIsotope( void );
|
||||
/** Returns the MetaState of the fission isotope. */
|
||||
G4FFGEnumerations::MetaState G4GetMetaState( void );
|
||||
/** Returns the FissionSamplingScheme that is currently in use. */
|
||||
G4FFGEnumerations::FissionSamplingScheme G4GetSamplingScheme( void );
|
||||
/** Returns the yield type that is currently in use */
|
||||
G4FFGEnumerations::YieldType G4GetYieldType( void );
|
||||
/** Initializes a new \p G4FPY...Dist class based on the class descriptor
|
||||
* variables of G4FissionFragmentGenerator.
|
||||
*/
|
||||
bool InitializeFissionProductYieldClass( std::istringstream& dataFile );
|
||||
/** Converts the Z, A and M of an isotope into an integer representation **/
|
||||
static G4int G4MakeIsotopeCode(G4int Z, G4int A, G4int M);
|
||||
/** Sets the number of alpha particles produced in fission.
|
||||
* - Usage:
|
||||
* - if \p AlphaProduction is negative then alpha particles are sampled
|
||||
* on a Gaussian with a mean of \p abs(AlphaProduction).
|
||||
*
|
||||
* - Notes:
|
||||
* - The maximum number of alpha particles that may be created is
|
||||
* physically limited by the nucleons present in the parent nucleus.
|
||||
* Setting the AlphaProduction too high will have unpredictable
|
||||
* results on the sampling of the fission products.
|
||||
*/
|
||||
void G4SetAlphaProduction( G4double WhatAlphaProduction );
|
||||
/** Sets the probability of ternary fission
|
||||
* - Usage:
|
||||
* - \p WhatAlphaProductionProbability: Probability of generating alpha
|
||||
* particles for a fission event. 1 = 100% chance of alpha production
|
||||
*
|
||||
* - Notes:
|
||||
*/
|
||||
void G4SetTernaryProbability( G4double WhatTernaryProbability );
|
||||
/** Sets the cause of fission event.
|
||||
* - Usage:
|
||||
* - \p WhichCause: \p SPONTANEOUS, \p N_INDUCED, \p P_INDUCED, or
|
||||
* \p G_INDUCED
|
||||
*
|
||||
* - Notes:
|
||||
*/
|
||||
void G4SetCause( G4FFGEnumerations::FissionCause WhichCause );
|
||||
/** Sets the incident energy, if any, of the particle that cause fission.
|
||||
* - Usage:
|
||||
* - \p WhatIncidentEnergy: Kinetic energy of the particle with units applied;
|
||||
*
|
||||
* - Notes:
|
||||
*/
|
||||
void G4SetIncidentEnergy( G4double WhatIncidentEnergy );
|
||||
/** Sets the fission isotope
|
||||
* - Usage:
|
||||
* - \p WhichIsotope: Code of the isotope in ZZZAAA format
|
||||
*
|
||||
* - Notes:
|
||||
*/
|
||||
void G4SetIsotope( G4int WhichIsotope );
|
||||
/** Sets the metastable state of the fission isotope.
|
||||
* - Usage:
|
||||
* - \p WhichMetaState: \p GROUND_STATE, \p META_1, or \p META_2
|
||||
*
|
||||
* - Notes:
|
||||
*/
|
||||
void G4SetMetaState( G4FFGEnumerations::MetaState WhichMetaState );
|
||||
/** Set the sampling scheme.
|
||||
* - Usage:
|
||||
* - NewScheme: The G4FissionSamplingScheme value for the sampling
|
||||
* scheme to use.
|
||||
*
|
||||
* - Notes:
|
||||
* - \p NORMAL: Sets the parameters of this class to sample fission
|
||||
* events without any biasing.
|
||||
* - \p LIGHT_FRAGMENT: Sets the parameters of this class to bias the
|
||||
* fragment generation by always selecting a light fragment
|
||||
* (A \< 115) first.
|
||||
* - \p WENDT: Sets the parameters of this class to sample fission
|
||||
* events according to the Wendt sampling scheme. Please refer to
|
||||
* the code documentation for G4FPYWendtSamplingDist for a more
|
||||
* detailed explanation.
|
||||
*/
|
||||
void G4SetSamplingScheme( G4FFGEnumerations::FissionSamplingScheme NewScheme );
|
||||
/** Sets the ENDF yield type to be used for the data
|
||||
* - Usage:
|
||||
* - \p WhichYieldType: \p INDEPENDENT or \p COMULATIVE
|
||||
*
|
||||
* - Notes:
|
||||
*/
|
||||
void G4SetYieldType( G4FFGEnumerations::YieldType WhichYieldType );
|
||||
/** Sets the verbosity levels
|
||||
* - Usage:
|
||||
* - \p WhichVerbosity: Combination of levels
|
||||
*
|
||||
* - Notes:
|
||||
* - \p SILENT: All verbose output is repressed
|
||||
* - \p UPDATES: Only high-level internal changes are reported
|
||||
* - \p DAUGHTER_INFO: Displays information about daughter product sampling
|
||||
* - \p NEUTRON_INFO: Displays information about neutron sampling
|
||||
* - \p GAMMA_INFO: Displays information about gamma sampling
|
||||
* - \p ALPHA_INFO: Displays information about alpha sampling
|
||||
* - \p MOMENTUM_INFO: Displays information about momentum balancing
|
||||
* - \p EXTRAPOLATION_INTERPOLATION_INFO: Displays information about any data extrapolation or interpolation that occurs
|
||||
* - \p DEBUG: Reports program flow as it steps through functions
|
||||
* - \p PRINT_ALL: Displays any and all output
|
||||
*/
|
||||
void G4SetVerbosity( G4int WhatVerbosity );
|
||||
|
||||
protected:
|
||||
// Variables
|
||||
// Class descriptor variables
|
||||
/** Number in ZZZAAA format of the isotope that
|
||||
* G4FissionFragmentGenerator references
|
||||
*/
|
||||
G4int Isotope_;
|
||||
/** MetaState information of the isotope that G4FissionFragmentGenerator
|
||||
* references
|
||||
* \n A value of 0 refers to the ground state
|
||||
*/
|
||||
G4FFGEnumerations::MetaState MetaState_;
|
||||
/** The cause of fission: \p SPONTANEOUS or \p N_INDUCED. */
|
||||
G4FFGEnumerations::FissionCause Cause_;
|
||||
/** Kinetic energy, if any, of the incident particle in GeV. */
|
||||
G4double IncidentEnergy_;
|
||||
/** The type of yield to be used: \p INDEPENDET or \p CUMULATIVE */
|
||||
G4FFGEnumerations::YieldType YieldType_;
|
||||
/** Sets the ternary fission probability. Valid ranges are [0, 1] */
|
||||
G4double TernaryProbability_;
|
||||
/** Controls whether alpha particles are emitted, and how many */
|
||||
G4double AlphaProduction_;
|
||||
/** If Isotope_, MetaState_, Cause_, or IncidentEnergy_ are changed in
|
||||
* the middle of a run then the class pointed at by YieldData_ will
|
||||
* need to be reconstructed
|
||||
*/
|
||||
G4bool IsReconstructionNeeded_;
|
||||
/** Verbosity level */
|
||||
G4int Verbosity_;
|
||||
|
||||
// Defines the current sampling scheme and the respective class
|
||||
/** The sampling scheme that is used: \p NORMAL, \p LIGHT_FRAGMENT, or
|
||||
* \p WENDT.
|
||||
*/
|
||||
G4FFGEnumerations::FissionSamplingScheme SamplingScheme_;
|
||||
/** Pointer to G4FissionProductYieldDist class that holds all the
|
||||
* probabilistic yield data
|
||||
*/
|
||||
G4FissionProductYieldDist* YieldData_;
|
||||
|
||||
// Destructor function(s)
|
||||
public:
|
||||
/** Default deconstructor */
|
||||
~G4FissionFragmentGenerator();
|
||||
};
|
||||
|
||||
#endif /* G4FISSIONFRAGMENTGENERATOR_HH */
|
||||
|
||||
+369
@@ -0,0 +1,369 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
/*
|
||||
* File: G4FissionProductYieldDist.hh
|
||||
* Author: B. Wendt (wendbryc@isu.edu)
|
||||
*
|
||||
* Created on May 11, 2011, 12:04 PM
|
||||
*/
|
||||
|
||||
#ifndef G4FISSIONPRODUCTYIELDDIST_HH
|
||||
#define G4FISSIONPRODUCTYIELDDIST_HH
|
||||
|
||||
#include "G4Ions.hh"
|
||||
#include "G4IonTable.hh"
|
||||
#include "G4NeutronHPNames.hh"
|
||||
#include "globals.hh"
|
||||
#include "G4DynamicParticle.hh"
|
||||
#include "G4DynamicParticleVector.hh"
|
||||
#include "G4ReactionProduct.hh"
|
||||
|
||||
#include "G4ENDFTapeRead.hh"
|
||||
#include "G4ENDFYieldDataContainer.hh"
|
||||
#include "G4FFGEnumerations.hh"
|
||||
#include "G4FPYNubarValues.hh"
|
||||
#include "G4FPYSamplingOps.hh"
|
||||
#include "G4FPYTreeStructures.hh"
|
||||
|
||||
/** G4FissionProductYieldDist is the base class for storing all the fission
|
||||
* data and generating fission events. */
|
||||
class G4FissionProductYieldDist
|
||||
{
|
||||
public:
|
||||
// Constructor definition
|
||||
/** Default constructor
|
||||
* - Usage:
|
||||
* - \p WhichIsotope: Isotope number of the element in ZZZAAA form
|
||||
* - \p WhichMetaState: \p GROUND_STATE, \p META_1, or \p META_2
|
||||
* - \p WhichCause: \p SPONTANEOUS or \p N_INDUCED
|
||||
* - \p WhichYieldType: \p INDEPENDENT or \p CUMULATIVE
|
||||
*
|
||||
* - Notes:
|
||||
*/
|
||||
G4FissionProductYieldDist( G4int WhichIsotope,
|
||||
G4FFGEnumerations::MetaState WhichMetaState,
|
||||
G4FFGEnumerations::FissionCause WhichCause,
|
||||
G4FFGEnumerations::YieldType WhichYieldType,
|
||||
std::istringstream& dataStream);
|
||||
/** Overloaded constructor
|
||||
* - Usage:
|
||||
* - \p WhichIsotope: Isotope number of the element in ZZZAAA form
|
||||
* - \p WhichMetaState: \p GROUND_STATE, \p META_1, or \p META_2
|
||||
* - \p WhichCause: \p SPONTANEOUS or \p N_INDUCED
|
||||
* - \p WhichYieldType: \p INDEPENDENT or \p CUMULATIVE
|
||||
* - \p Verbosity: Verbosity level
|
||||
*
|
||||
* - Notes:
|
||||
*/
|
||||
G4FissionProductYieldDist( G4int WhichIsotope,
|
||||
G4FFGEnumerations::MetaState WhichMetaState,
|
||||
G4FFGEnumerations::FissionCause WhichCause,
|
||||
G4FFGEnumerations::YieldType WhichYieldType,
|
||||
G4int Verbosity,
|
||||
std::istringstream& dataStream);
|
||||
private:
|
||||
/** Initialize is a common function called by all constructors. */
|
||||
void Initialize( std::istringstream& dataStream );
|
||||
|
||||
public:
|
||||
// Functions
|
||||
/** Generates a fission event using default sampling and returns the pointer
|
||||
* to that fission event.
|
||||
* - Usage: No arguments required
|
||||
*
|
||||
* - Notes:
|
||||
* - The fission products are loaded into FissionContainer in the
|
||||
* following order:
|
||||
* - First daughter product
|
||||
* - Second daughter product
|
||||
* - Alpha particles
|
||||
* - Neutrons
|
||||
* - Gamma rays
|
||||
* - The last particle will have a NULL NextFragment pointer
|
||||
*/
|
||||
G4DynamicParticleVector* G4GetFission( void );
|
||||
/** Selects a fission fragment at random from the probability tree and
|
||||
* returns the \p G4Ions pointer.
|
||||
* - Usage: No arguments required
|
||||
*
|
||||
* - Notes:
|
||||
*/
|
||||
G4Ions* G4GetFissionProduct( void );
|
||||
/** Set the alpha production behavior for fission event generation.
|
||||
* - Usage:
|
||||
* - if \p AlphaProduction is negative then alpha particles are sampled
|
||||
* randomly.
|
||||
*
|
||||
* - Notes:
|
||||
* - The maximum number of alpha particles that may be created is
|
||||
* physically limited by the nucleons present in the parent nucleus.
|
||||
* Setting the AlphaProduction too high will have unpredictable
|
||||
* results on the sampling of the fission products.
|
||||
*/
|
||||
void G4SetAlphaProduction( G4double WhatAlphaProduction );
|
||||
/** Sets the energy of the incident particle
|
||||
* - Usage:
|
||||
* - \p WhatIncidentEnergy: Kinetic energy, if any, of the incident
|
||||
* neutron in GeV
|
||||
*
|
||||
* - Notes:
|
||||
*/
|
||||
void G4SetEnergy( G4double WhatIncidentEnergy );
|
||||
/** Sets the probability of ternary fission
|
||||
* - Usage:
|
||||
* - \p WhatTernaryProbability: Probability of generating a ternary
|
||||
* fission event.
|
||||
*
|
||||
* - Notes:
|
||||
*/
|
||||
void G4SetTernaryProbability( G4double TernaryProbability );
|
||||
/** Sets the verbosity levels
|
||||
* - Usage:
|
||||
* - \p WhichVerbosity: Combination of levels
|
||||
*
|
||||
* - Notes:
|
||||
* - \p SILENT: All verbose output is repressed
|
||||
* - \p UPDATES: Only high-level internal changes are reported
|
||||
* - \p DAUGHTER_INFO: Displays information about daughter product sampling
|
||||
* - \p NEUTRON_INFO: Displays information about neutron sampling
|
||||
* - \p GAMMA_INFO: Displays information about gamma sampling
|
||||
* - \p ALPHA_INFO: Displays information about alpha sampling
|
||||
* - \p MOMENTUM_INFO: Displays information about momentum balancing
|
||||
* - \p EXTRAPOLATION_INTERPOLATION_INFO: Displays information about any data extrapolation or interpolation that occurs
|
||||
* - \p DEBUG: Reports program flow as it steps through functions
|
||||
* - \p PRINT_ALL: Displays any and all output
|
||||
*/
|
||||
void G4SetVerbosity( G4int WhatVerbosity );
|
||||
|
||||
protected:
|
||||
// Variables
|
||||
// Class descriptor variables
|
||||
/** Number in ZZZAAA format of the isotope that
|
||||
* G4FissionProductYieldDist references
|
||||
*/
|
||||
const G4int Isotope_;
|
||||
/** MetaState information of the isotope that G4FissionProductYieldDist
|
||||
* references
|
||||
* \n Possible values are \p GROUND_STATE, \p META_1, or \p META_2
|
||||
*/
|
||||
const G4FFGEnumerations::MetaState MetaState_;
|
||||
/** The cause of fission: \p SPONTANEOUS or \p N_INDUCED. */
|
||||
const G4FFGEnumerations::FissionCause Cause_;
|
||||
/** The type of yield to be used: \p INDEPENDET or \p CUMULATIVE */
|
||||
const G4FFGEnumerations::YieldType YieldType_;
|
||||
|
||||
// Datafile variables
|
||||
/** Name of the fission yield product data file that
|
||||
* G4FissionProductYieldDist references
|
||||
*/
|
||||
G4ENDFTapeRead* ENDFData_;
|
||||
|
||||
// Fission generation variables
|
||||
/** Contains the \p G4Ions pointer to an alpha particle */
|
||||
G4Ions* AlphaDefinition_;
|
||||
/** Controls whether alpha particles are emitted, and how many */
|
||||
G4double AlphaProduction_;
|
||||
/** Sets the ternary fission probability. Valid ranges are [0, 1] */
|
||||
G4double TernaryProbability_;
|
||||
/** Contains the \p g4ParticleDefinition pointer to a gamma particle */
|
||||
G4Ions* GammaDefinition_;
|
||||
/** Kinetic energy, if any, of the incident particle in GeV. */
|
||||
G4double IncidentEnergy_;
|
||||
/** Sets the mean gamma energy, in MeV, produced by the fission of the
|
||||
* isotope described by Isotope_
|
||||
*/
|
||||
G4double MeanGammaEnergy_;
|
||||
/** Contains the G4ParticleDefinition pointer to a neutron, cast as a
|
||||
* G4Ion for compatibility*/
|
||||
G4Ions* NeutronDefinition_;
|
||||
/** Nubar for the isotope and incident neutron energy that
|
||||
* G4FissionProductYieldDist references.
|
||||
*/
|
||||
G4double Nubar_;
|
||||
/** Width of the gaussian distribution that samples nubar for the
|
||||
* isotope and incident neutron energy that G4FissionProductYieldDist
|
||||
* references.
|
||||
*/
|
||||
G4double NubarWidth_;
|
||||
/** Counter for the number of protons available to the fission event */
|
||||
G4int RemainingZ_;
|
||||
/** Counter for the number of nucleons available to the fission event */
|
||||
G4int RemainingA_;
|
||||
/** Container for the energy remaining to be assigned in the fission generation */
|
||||
G4double RemainingEnergy_;
|
||||
/** Verbosity level */
|
||||
G4int Verbosity_;
|
||||
|
||||
// Pointers to the field of trees and relevant normalization data
|
||||
/** An array, or 'field', of the probability trees */
|
||||
ProbabilityTree* Trees_;
|
||||
/** Defines the smallest Z particle in the field of trees */
|
||||
G4Ions* SmallestZ_;
|
||||
/** Defines the smallest A particle in the field of trees */
|
||||
G4Ions* SmallestA_;
|
||||
/** Defines the largest Z particle in the field of trees. */
|
||||
G4Ions* LargestZ_;
|
||||
/** Defines the largest Z particle in the field of trees */
|
||||
G4Ions* LargestA_;
|
||||
/** Number of specific energy groups */
|
||||
G4int YieldEnergyGroups_;
|
||||
/** Energy values of each energy */
|
||||
G4double* YieldEnergies_;
|
||||
/** Variable for ensuring that the input data is normalized */
|
||||
G4double* MaintainNormalizedData_;
|
||||
/** A running total of all the probabilities */
|
||||
G4double* DataTotal_;
|
||||
/** The number of trees in the field */
|
||||
G4int TreeCount_;
|
||||
/** A run-time counter for the total number of branches stored */
|
||||
G4int BranchCount_;
|
||||
|
||||
// Pointers to runtime classes that G4FissionProductYieldDist needs to
|
||||
// function properly
|
||||
/** Pointer to \p G4IonTable
|
||||
* \n All \p G4Ions are created using
|
||||
* \p G4IonTable
|
||||
*/
|
||||
G4IonTable* IonTable_;
|
||||
/** Pointer to \p G4NeutronHPNames
|
||||
* \n Provides access to the list of element names included in Geant4
|
||||
*/
|
||||
G4NeutronHPNames* ElementNames_;
|
||||
/** Pointer to the \p CLHEP library random engine */
|
||||
G4FPYSamplingOps* RandomEngine_;
|
||||
|
||||
//Functions
|
||||
/** Checks to make sure that alpha overpopulation will not occur, which
|
||||
* could result in an unsolvable zero momentum in the LAB system.
|
||||
*/
|
||||
void CheckAlphaSanity( void );
|
||||
/** Returns the \p G4Ions definitions pointer for the particle whose
|
||||
* probability segment contains the (0, 1] random number \p RandomParticle
|
||||
*/
|
||||
G4Ions* FindParticle( G4double RandomParticle );
|
||||
/** Returns the \p G4Ions definitions pointer for the particle whose
|
||||
* probability segment contains the (0, 1] random number \p RandomParticle
|
||||
* by extrapolating values using the current data set.
|
||||
* This function exists so that that different models of extrapolation
|
||||
* may be more easily implemented in the future.
|
||||
*/
|
||||
G4Ions* FindParticleExtrapolation( G4double RandomParticle,
|
||||
G4bool LowerEnergyGroupExists );
|
||||
/** Returns the \p G4Ions definitions pointer for the particle whose
|
||||
* probability segment contains the (0, 1] random number \p RandomParticle
|
||||
* by interpolating values in the current data set.
|
||||
* This function exists so that that different models of interpolation
|
||||
* may be more easily implemented in the future.
|
||||
*/
|
||||
G4Ions* FindParticleInterpolation( G4double RandomParticle,
|
||||
G4int LowerEnergyGroup );
|
||||
/** Returns the \p G4Ions definitions pointer for the particle whose
|
||||
* probability segment contains the (0, 1] random number \p RandomParticle
|
||||
* by searching through a branch. Both the extrapolation and interpolation
|
||||
* schemes currently use this function to identify the particle.
|
||||
*/
|
||||
G4Ions* FindParticleBranchSearch( ProbabilityBranch* Branch,
|
||||
G4double RandomParticle,
|
||||
G4int EnergyGroup1,
|
||||
G4int EnergyGroup2 );
|
||||
/** Generates a \p G4DynamicParticleVector with the fission alphas
|
||||
*/
|
||||
virtual void GenerateAlphas( std::vector< G4ReactionProduct* >* Alphas );
|
||||
/** Generate a linked chain of neutrons and return the pointer to the last
|
||||
* neutron in the chain.
|
||||
*/
|
||||
virtual void GenerateNeutrons( std::vector< G4ReactionProduct* >* Neutrons );
|
||||
/** Selects a fission product from the probability tree, limited by the
|
||||
* number of nucleons available to the system
|
||||
*/
|
||||
virtual G4Ions* GetFissionProduct( void ) = 0;
|
||||
/** Returns the \p G4Ions definition pointer to the isotope defined by
|
||||
* \p Product and \p MetaState.
|
||||
* Searches the \p ParticleTable for the particle defined by \p Product
|
||||
* (ZZZAAA) and \p MetaState and returns the \p G4Ions
|
||||
* pointer to that particle. If the particle does not exist then it is
|
||||
* created in \p G4ParticleTable and the pointer to the new particle is
|
||||
* returned.
|
||||
*/
|
||||
G4Ions* GetParticleDefinition( G4int Product,
|
||||
G4FFGEnumerations::MetaState MetaState );
|
||||
/** Generates the directory location for the data file referenced by
|
||||
* G4FissionProductYieldDist
|
||||
*/
|
||||
G4String MakeDirectoryName( void );
|
||||
/** Generates the appropriate file name for the isotope requested */
|
||||
G4String MakeFileName( G4int Isotope,
|
||||
G4FFGEnumerations::MetaState MetaState );
|
||||
/** Creates a \p G4DynamicParticle from an existing \p G4ReactionProduct */
|
||||
G4DynamicParticle* MakeG4DynamicParticle( G4ReactionProduct* );
|
||||
/** Generates the unique name for an isotope/isomer defined by \p Isotope\
|
||||
* and \p MetaState in the following format: ZZZ_AAAmX_NAME
|
||||
*/
|
||||
G4String MakeIsotopeName( G4int Isotope,
|
||||
G4FFGEnumerations::MetaState MetaState );
|
||||
/** Dynamically allocates and initializes the 'field' of 'trees' with the
|
||||
* 'trunks'
|
||||
*/
|
||||
virtual void MakeTrees( void );
|
||||
/** Reads in the probability data from the data file */
|
||||
virtual void ReadProbabilities( void );
|
||||
/** Renormalizes the data in a ProbabilityTree.
|
||||
* Traverses the tree structure and renormalizes all the probability data
|
||||
* into probability segments, ensuring that no segment overlaps the
|
||||
* other.
|
||||
*/
|
||||
void Renormalize( ProbabilityBranch* Branch );
|
||||
/** Sample the energy of the alpha particles. The energy used by the alpha
|
||||
* particles is subtracted from the available energy
|
||||
*/
|
||||
void SampleAlphaEnergies( std::vector< G4ReactionProduct* >* Alphas );
|
||||
/** Samples the energy of the gamma rays */
|
||||
void SampleGammaEnergies( std::vector< G4ReactionProduct* >* Gammas );
|
||||
/** Sample the energy of the neutrons using the Watt fission spectrum. The
|
||||
* kinetic energy consumed is returned.
|
||||
*/
|
||||
void SampleNeutronEnergies( std::vector< G4ReactionProduct* >* Neutrons );
|
||||
/** Sets the nubar values for the isotope referenced by
|
||||
* G4FissionProductYieldDistdefined from the data sets defined in
|
||||
* SpecialOps.hh
|
||||
*/
|
||||
void SetNubar( void );
|
||||
/** Sorts information for a potential new particle into the correct tree */
|
||||
virtual void SortProbability( G4ENDFYieldDataContainer* YieldData );
|
||||
|
||||
// Destructor function(s)
|
||||
public:
|
||||
/** Default deconstructor. It is a virtual function since
|
||||
* G4FissionProductYieldDist is a parent class
|
||||
*/
|
||||
virtual ~G4FissionProductYieldDist( void );
|
||||
protected:
|
||||
/** Recursively burns each branch in a probability tree. */
|
||||
void BurnTree( ProbabilityBranch* Branch );
|
||||
};
|
||||
|
||||
#endif /* G4FISSIONPRODUCTYIELDDIST_HH */
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4InterpolationIterator_h
|
||||
#define G4InterpolationIterator_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4InterpolationManager_h
|
||||
#define G4InterpolationManager_h 1
|
||||
@@ -99,7 +98,7 @@ class G4InterpolationManager
|
||||
nEntries = aRange;
|
||||
}
|
||||
|
||||
inline void Init(std::ifstream & aDataFile)
|
||||
inline void Init(std::istream & aDataFile)
|
||||
{
|
||||
delete [] start;
|
||||
delete [] range;
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4InterpolationScheme_h
|
||||
#define G4InterpolationScheme_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHP2AInelasticFS_h
|
||||
#define G4NeutronHP2AInelasticFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHP2N2AInelasticFS_h
|
||||
#define G4NeutronHP2N2AInelasticFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHP2NAInelasticFS_h
|
||||
#define G4NeutronHP2NAInelasticFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHP2NDInelasticFS_h
|
||||
#define G4NeutronHP2NDInelasticFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHP2NInelasticFS_h
|
||||
#define G4NeutronHP2NInelasticFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHP2NPInelasticFS_h
|
||||
#define G4NeutronHP2NPInelasticFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHP2PInelasticFS_h
|
||||
#define G4NeutronHP2PInelasticFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHP3AInelasticFS_h
|
||||
#define G4NeutronHP3AInelasticFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHP3NAInelasticFS_h
|
||||
#define G4NeutronHP3NAInelasticFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHP3NInelasticFS_h
|
||||
#define G4NeutronHP3NInelasticFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHP3NPInelasticFS_h
|
||||
#define G4NeutronHP3NPInelasticFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHP4NInelasticFS_h
|
||||
#define G4NeutronHP4NInelasticFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPAInelasticFS_h
|
||||
#define G4NeutronHPAInelasticFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
// 070613 fix memory leaking by T. Koi
|
||||
//
|
||||
@@ -61,7 +60,7 @@ class G4NeutronHPAngular
|
||||
delete theProbArray;
|
||||
}
|
||||
|
||||
void Init(std::ifstream & aDataFile);
|
||||
void Init(std::istream & aDataFile);
|
||||
|
||||
void SampleAndUpdate(G4ReactionProduct & aNeutron);
|
||||
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPAngularP_h
|
||||
#define G4NeutronHPAngularP_h 1
|
||||
@@ -49,7 +48,7 @@ class G4NeutronHPAngularP
|
||||
if(theProb!=0) delete [] theProb;
|
||||
}
|
||||
|
||||
inline void Init(std::ifstream & aDataFile)
|
||||
inline void Init(std::istream & aDataFile)
|
||||
{
|
||||
G4double eNeu, cosTheta, probDist;
|
||||
G4int nProb;
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPArbitaryTab_h
|
||||
#define G4NeutronHPArbitaryTab_h 1
|
||||
@@ -53,7 +52,7 @@ class G4NeutronHPArbitaryTab : public G4VNeutronHPEDis
|
||||
if(theDistFunc!=0) delete [] theDistFunc;
|
||||
}
|
||||
|
||||
inline void Init(std::ifstream & theData)
|
||||
inline void Init(std::istream & theData)
|
||||
{
|
||||
G4int i;
|
||||
theFractionalProb.Init(theData, CLHEP::eV);
|
||||
|
||||
-1
@@ -23,7 +23,6 @@
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
// -------------------------------------------------------------------
|
||||
//
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
// Hadronic Process: Very Low Energy Neutron X-Sections
|
||||
// original by H.P. Wellisch, TRIUMF, 14-Feb-97
|
||||
@@ -56,6 +55,10 @@ class G4NeutronHPCapture : public G4HadronicInteraction
|
||||
G4HadFinalState * ApplyYourself(const G4HadProjectile& aTrack, G4Nucleus& aTargetNucleus);
|
||||
|
||||
virtual const std::pair<G4double, G4double> GetFatalEnergyCheckLevels() const;
|
||||
|
||||
public:
|
||||
G4int GetVerboseLevel() const;
|
||||
void SetVerboseLevel( G4int );
|
||||
|
||||
private:
|
||||
|
||||
@@ -64,7 +67,7 @@ class G4NeutronHPCapture : public G4HadronicInteraction
|
||||
std::vector<G4NeutronHPChannel*> theCapture;
|
||||
G4String dirName;
|
||||
G4int numEle;
|
||||
G4int it;
|
||||
// G4int it;
|
||||
|
||||
G4HadFinalState theResult;
|
||||
void addChannelForNewElement();
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
// 080417 Add IsZAApplicable method (return false) by T. Koi
|
||||
// 080428 Add bool onFlightDB by T. Koi
|
||||
@@ -80,6 +79,10 @@ class G4NeutronHPCaptureData : public G4VCrossSectionDataSet
|
||||
|
||||
void IgnoreOnFlightDopplerBroadening(){ onFlightDB = false; };
|
||||
void EnableOnFlightDopplerBroadening(){ onFlightDB = true; };
|
||||
|
||||
public:
|
||||
G4int GetVerboseLevel() const;
|
||||
void SetVerboseLevel( G4int );
|
||||
|
||||
private:
|
||||
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPCaptureFS_h
|
||||
#define G4NeutronHPCaptureFS_h 1
|
||||
@@ -72,7 +71,7 @@ class G4NeutronHPCaptureFS : public G4NeutronHPFinalState
|
||||
|
||||
G4NeutronHPNames theNames;
|
||||
|
||||
G4double theCurrentA;
|
||||
G4double theCurrentZ;
|
||||
// G4double theCurrentA;
|
||||
// G4double theCurrentZ;
|
||||
};
|
||||
#endif
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
// Hadronic Process: Very Low Energy Neutron X-Sections
|
||||
// original by H.P. Wellisch, TRIUMF, 14-Feb-97
|
||||
@@ -50,12 +49,14 @@
|
||||
#include "G4NeutronHPCaptureFS.hh"
|
||||
#include "G4NeutronHPFinalState.hh"
|
||||
#include "G4Element.hh"
|
||||
#include "G4WendtFissionFragmentGenerator.hh"
|
||||
|
||||
class G4NeutronHPChannel
|
||||
{
|
||||
public:
|
||||
|
||||
G4NeutronHPChannel()
|
||||
: wendtFissionGenerator(getenv("G4NEUTRON_HP_USE_WENDT_FISSION_MODEL") == NULL ? NULL : G4WendtFissionFragmentGenerator::GetInstance())
|
||||
{
|
||||
theChannelData = new G4NeutronHPVector;
|
||||
theBuffer = 0;
|
||||
@@ -128,6 +129,7 @@ public:
|
||||
|
||||
inline G4double GetN(G4int i) {return theFinalStates[i]->GetN();}
|
||||
inline G4double GetZ(G4int i) {return theFinalStates[i]->GetZ();}
|
||||
inline G4double GetM(G4int i) {return theFinalStates[i]->GetM();}
|
||||
|
||||
inline G4bool HasDataInAnyFinalState()
|
||||
{
|
||||
@@ -156,6 +158,8 @@ private:
|
||||
G4Element * theElement;
|
||||
|
||||
G4int registerCount;
|
||||
|
||||
G4WendtFissionFragmentGenerator* const wendtFissionGenerator;
|
||||
|
||||
};
|
||||
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
// Hadronic Process: Very Low Energy Neutron X-Sections
|
||||
// original by H.P. Wellisch, TRIUMF, 14-Feb-97
|
||||
@@ -91,7 +90,7 @@ class G4NeutronHPChannelList
|
||||
}
|
||||
private:
|
||||
|
||||
static G4int trycounter;
|
||||
static G4ThreadLocal G4int trycounter;
|
||||
G4NeutronHPChannel ** theChannels;
|
||||
G4int nChannels;
|
||||
G4String theDir;
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
// 080718 Add ClearHistories method and related class member
|
||||
//
|
||||
@@ -54,7 +53,7 @@ class G4NeutronHPContAngularPar
|
||||
if(theAngular!=0) delete [] theAngular;
|
||||
}
|
||||
|
||||
void Init(std::ifstream & aDataFile);
|
||||
void Init(std::istream & aDataFile);
|
||||
|
||||
G4ReactionProduct * Sample(G4double anEnergy, G4double massCode, G4double mass,
|
||||
G4int angularRep, G4int interpol);
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
// 080721 Add ClearHistories() method by T. Koi
|
||||
//
|
||||
@@ -57,7 +56,7 @@ class G4NeutronHPContEnergyAngular : public G4VNeutronHPEnergyAngular
|
||||
|
||||
public:
|
||||
|
||||
void Init(std::ifstream & aDataFile)
|
||||
void Init(std::istream & aDataFile)
|
||||
{
|
||||
aDataFile >> theTargetCode >> theAngularRep >> theInterpolation >> nEnergy;
|
||||
theAngular = new G4NeutronHPContAngularPar[nEnergy];
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPD2AInelasticFS_h
|
||||
#define G4NeutronHPD2AInelasticFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPDAInelasticFS_h
|
||||
#define G4NeutronHPDAInelasticFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPDInelasticFS_h
|
||||
#define G4NeutronHPDInelasticFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
// Hadronic Process: Very Low Energy Neutron X-Sections
|
||||
// original by H.P. Wellisch, TRIUMF, 14-Feb-97
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPDataPoint_h
|
||||
#define G4NeutronHPDataPoint_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPDeExGammas_h
|
||||
#define G4NeutronHPDeExGammas_h 1
|
||||
@@ -58,7 +57,7 @@ class G4NeutronHPDeExGammas
|
||||
if(theLevels!=0) delete [] theLevels;
|
||||
}
|
||||
|
||||
void Init(std::ifstream & aDataFile);
|
||||
void Init(std::istream & aDataFile);
|
||||
|
||||
inline G4ReactionProductVector * GetDecayGammas(G4int aLevel)
|
||||
{
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPDiscreteTwoBody_h
|
||||
#define G4NeutronHPDiscreteTwoBody_h 1
|
||||
@@ -52,7 +51,7 @@ class G4NeutronHPDiscreteTwoBody : public G4VNeutronHPEnergyAngular
|
||||
if(theCoeff!=0) delete [] theCoeff;
|
||||
}
|
||||
|
||||
void Init(std::ifstream & aDataFile)
|
||||
void Init(std::istream & aDataFile)
|
||||
{
|
||||
aDataFile >> nEnergy;
|
||||
theManager.Init(aDataFile);
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
// Hadronic Process: High Precision low E neutron tracking
|
||||
// original by H.P. Wellisch, TRIUMF, 14-Feb-97
|
||||
@@ -62,6 +61,10 @@ class G4NeutronHPElastic : public G4HadronicInteraction
|
||||
|
||||
void DoNotSuspend() {overrideSuspension = true;}
|
||||
|
||||
public:
|
||||
G4int GetVerboseLevel() const;
|
||||
void SetVerboseLevel( G4int );
|
||||
|
||||
private:
|
||||
|
||||
G4double * xSec;
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
// 080417 Add IsZAApplicable method (return false) by T. Koi
|
||||
// 080428 Add bool onFlightDB by T. Koi
|
||||
@@ -81,6 +80,9 @@ class G4NeutronHPElasticData : public G4VCrossSectionDataSet
|
||||
|
||||
void IgnoreOnFlightDopplerBroadening(){ onFlightDB = false; };
|
||||
void EnableOnFlightDopplerBroadening(){ onFlightDB = true; };
|
||||
|
||||
void SetVerboseLevel( G4int );
|
||||
G4int GetVerboseLevel() const;
|
||||
|
||||
private:
|
||||
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
// 25-08-06 New Final State type (refFlag==3 , Legendre (Low Energy) + Probability (High Energy) )
|
||||
// is added by T. KOI
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
// Hadronic Process: Very Low Energy Neutron X-Sections
|
||||
// original by H.P. Wellisch, TRIUMF, 14-Feb-97
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPEnAngCorrelation_h
|
||||
#define G4NeutronHPEnAngCorrelation_h 1
|
||||
@@ -52,7 +51,7 @@ class G4NeutronHPEnAngCorrelation
|
||||
if(theProducts!=0) delete [] theProducts;
|
||||
}
|
||||
|
||||
inline void Init(std::ifstream & aDataFile)
|
||||
inline void Init(std::istream & aDataFile)
|
||||
{
|
||||
inCharge = true;
|
||||
aDataFile>>targetMass>>frameFlag>>nProducts;
|
||||
|
||||
+1
-2
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPEnergyDistribution_h
|
||||
#define G4NeutronHPEnergyDistribution_h 1
|
||||
@@ -65,7 +64,7 @@ class G4NeutronHPEnergyDistribution
|
||||
}
|
||||
}
|
||||
|
||||
inline void Init(std::ifstream & theData)
|
||||
inline void Init(std::istream & theData)
|
||||
{
|
||||
G4double dummy;
|
||||
theData >> dummy >> theNumberOfPartials;
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPEvapSpectrum_h
|
||||
#define G4NeutronHPEvapSpectrum_h 1
|
||||
@@ -50,7 +49,7 @@ class G4NeutronHPEvapSpectrum : public G4VNeutronHPEDis
|
||||
{
|
||||
}
|
||||
|
||||
inline void Init(std::ifstream & aDataFile)
|
||||
inline void Init(std::istream & aDataFile)
|
||||
{
|
||||
theFractionalProb.Init(aDataFile);
|
||||
theThetaDist.Init(aDataFile);
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPFCFissionFS_h
|
||||
#define G4NeutronHPFCFissionFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPFFFissionFS_h
|
||||
#define G4NeutronHPFFFissionFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPFSFissionFS_h
|
||||
#define G4NeutronHPFSFissionFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPFastLegendre_h
|
||||
#define G4NeutronHPFastLegendre_h 1
|
||||
@@ -37,7 +36,7 @@ class G4NeutronHPFastLegendre
|
||||
|
||||
G4NeutronHPFastLegendre()
|
||||
{
|
||||
value = new G4double * [31];
|
||||
value = new const G4double * [31];
|
||||
value[0] = l0;
|
||||
value[1] = l1;
|
||||
value[2] = l2;
|
||||
@@ -69,7 +68,7 @@ class G4NeutronHPFastLegendre
|
||||
value[28] = l28;
|
||||
value[29] = l29;
|
||||
value[30] = l30;
|
||||
integral = new G4double * [31];
|
||||
integral = new const G4double * [31];
|
||||
integral[0] = i0;
|
||||
integral[1] = i1;
|
||||
integral[2] = i2;
|
||||
@@ -170,70 +169,70 @@ class G4NeutronHPFastLegendre
|
||||
return x*slope+off;
|
||||
}
|
||||
|
||||
G4double ** value;
|
||||
G4double ** integral;
|
||||
const G4double ** value;
|
||||
const G4double ** integral;
|
||||
G4int theNbin[31];
|
||||
static G4double l0[201];
|
||||
static G4double i0[201];
|
||||
static G4double l1[401];
|
||||
static G4double i1[401];
|
||||
static G4double l2[601];
|
||||
static G4double i2[601];
|
||||
static G4double l3[801];
|
||||
static G4double i3[801];
|
||||
static G4double l4[1001];
|
||||
static G4double i4[1001];
|
||||
static G4double l5[1201];
|
||||
static G4double i5[1201];
|
||||
static G4double l6[1401];
|
||||
static G4double i6[1401];
|
||||
static G4double l7[1601];
|
||||
static G4double i7[1601];
|
||||
static G4double l8[1801];
|
||||
static G4double i8[1801];
|
||||
static G4double l9[2001];
|
||||
static G4double i9[2001];
|
||||
static G4double l10[2201];
|
||||
static G4double i10[2201];
|
||||
static G4double l11[2401];
|
||||
static G4double i11[2401];
|
||||
static G4double l12[2601];
|
||||
static G4double i12[2601];
|
||||
static G4double l13[2801];
|
||||
static G4double i13[2801];
|
||||
static G4double l14[3001];
|
||||
static G4double i14[3001];
|
||||
static G4double l15[3201];
|
||||
static G4double i15[3201];
|
||||
static G4double l16[3401];
|
||||
static G4double i16[3401];
|
||||
static G4double l17[3601];
|
||||
static G4double i17[3601];
|
||||
static G4double l18[3801];
|
||||
static G4double i18[3801];
|
||||
static G4double l19[4001];
|
||||
static G4double i19[4001];
|
||||
static G4double l20[4201];
|
||||
static G4double i20[4201];
|
||||
static G4double l21[4401];
|
||||
static G4double i21[4401];
|
||||
static G4double l22[4601];
|
||||
static G4double i22[4601];
|
||||
static G4double l23[4801];
|
||||
static G4double i23[4801];
|
||||
static G4double l24[5001];
|
||||
static G4double i24[5001];
|
||||
static G4double l25[5201];
|
||||
static G4double i25[5201];
|
||||
static G4double l26[5401];
|
||||
static G4double i26[5401];
|
||||
static G4double l27[5601];
|
||||
static G4double i27[5601];
|
||||
static G4double l28[5801];
|
||||
static G4double i28[5801];
|
||||
static G4double l29[6001];
|
||||
static G4double i29[6001];
|
||||
static G4double l30[6201];
|
||||
static G4double i30[6201];
|
||||
static const G4double l0[201];
|
||||
static const G4double i0[201];
|
||||
static const G4double l1[401];
|
||||
static const G4double i1[401];
|
||||
static const G4double l2[601];
|
||||
static const G4double i2[601];
|
||||
static const G4double l3[801];
|
||||
static const G4double i3[801];
|
||||
static const G4double l4[1001];
|
||||
static const G4double i4[1001];
|
||||
static const G4double l5[1201];
|
||||
static const G4double i5[1201];
|
||||
static const G4double l6[1401];
|
||||
static const G4double i6[1401];
|
||||
static const G4double l7[1601];
|
||||
static const G4double i7[1601];
|
||||
static const G4double l8[1801];
|
||||
static const G4double i8[1801];
|
||||
static const G4double l9[2001];
|
||||
static const G4double i9[2001];
|
||||
static const G4double l10[2201];
|
||||
static const G4double i10[2201];
|
||||
static const G4double l11[2401];
|
||||
static const G4double i11[2401];
|
||||
static const G4double l12[2601];
|
||||
static const G4double i12[2601];
|
||||
static const G4double l13[2801];
|
||||
static const G4double i13[2801];
|
||||
static const G4double l14[3001];
|
||||
static const G4double i14[3001];
|
||||
static const G4double l15[3201];
|
||||
static const G4double i15[3201];
|
||||
static const G4double l16[3401];
|
||||
static const G4double i16[3401];
|
||||
static const G4double l17[3601];
|
||||
static const G4double i17[3601];
|
||||
static const G4double l18[3801];
|
||||
static const G4double i18[3801];
|
||||
static const G4double l19[4001];
|
||||
static const G4double i19[4001];
|
||||
static const G4double l20[4201];
|
||||
static const G4double i20[4201];
|
||||
static const G4double l21[4401];
|
||||
static const G4double i21[4401];
|
||||
static const G4double l22[4601];
|
||||
static const G4double i22[4601];
|
||||
static const G4double l23[4801];
|
||||
static const G4double i23[4801];
|
||||
static const G4double l24[5001];
|
||||
static const G4double i24[5001];
|
||||
static const G4double l25[5201];
|
||||
static const G4double i25[5201];
|
||||
static const G4double l26[5401];
|
||||
static const G4double i26[5401];
|
||||
static const G4double l27[5601];
|
||||
static const G4double i27[5601];
|
||||
static const G4double l28[5801];
|
||||
static const G4double i28[5801];
|
||||
static const G4double l29[6001];
|
||||
static const G4double i29[6001];
|
||||
static const G4double l30[6201];
|
||||
static const G4double i30[6201];
|
||||
};
|
||||
#endif
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPField_h
|
||||
#define G4NeutronHPField_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPFieldPoint_h
|
||||
#define G4NeutronHPFieldPoint_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
// 080721 Create adjust_final_state method by T. Koi
|
||||
// 080801 Introduce theNDLDataA,Z which has A and Z of NDL data by T. Koi
|
||||
@@ -108,6 +107,7 @@ public:
|
||||
//080721
|
||||
protected:
|
||||
void adjust_final_state ( G4LorentzVector );
|
||||
G4bool DoNotAdjustFinalState(){ return adjustResult; };
|
||||
G4int theNDLDataZ;
|
||||
G4int theNDLDataA;
|
||||
G4int theNDLDataM;
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
// Hadronic Process: High Precision low E neutron tracking
|
||||
// original by H.P. Wellisch, TRIUMF, 14-Feb-97
|
||||
@@ -62,6 +61,10 @@ class G4NeutronHPFission : public G4HadronicInteraction
|
||||
|
||||
virtual const std::pair<G4double, G4double> GetFatalEnergyCheckLevels() const;
|
||||
|
||||
public:
|
||||
G4int GetVerboseLevel() const;
|
||||
void SetVerboseLevel( G4int );
|
||||
|
||||
private:
|
||||
|
||||
G4NeutronHPFissionFS theFS;
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPFissionBaseFS_h
|
||||
#define G4NeutronHPFissionBaseFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
// 080417 Add IsZAApplicable method (return false) by T. Koi
|
||||
//
|
||||
@@ -76,6 +75,10 @@ class G4NeutronHPFissionData : public G4VCrossSectionDataSet
|
||||
|
||||
void DumpPhysicsTable(const G4ParticleDefinition&);
|
||||
|
||||
public:
|
||||
G4int GetVerboseLevel() const;
|
||||
void SetVerboseLevel( G4int );
|
||||
|
||||
private:
|
||||
|
||||
G4PhysicsTable * theCrossSections;
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
// 070606 fix for Valgrind by T. Koi
|
||||
//
|
||||
@@ -53,7 +52,7 @@ class G4NeutronHPFissionERelease
|
||||
}
|
||||
~G4NeutronHPFissionERelease(){}
|
||||
|
||||
inline void Init(std::ifstream & aDataFile)
|
||||
inline void Init(std::istream & aDataFile)
|
||||
{
|
||||
G4double dummy;
|
||||
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPFissionFS_h
|
||||
#define G4NeutronHPFissionFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPFissionSpectrum_h
|
||||
#define G4NeutronHPFissionSpectrum_h 1
|
||||
@@ -51,7 +50,7 @@ class G4NeutronHPFissionSpectrum : public G4VNeutronHPEDis
|
||||
{
|
||||
}
|
||||
|
||||
inline void Init(std::ifstream & aDataFile)
|
||||
inline void Init(std::istream & aDataFile)
|
||||
{
|
||||
theFractionalProb.Init(aDataFile, CLHEP::eV);
|
||||
theThetaDist.Init(aDataFile, CLHEP::eV);
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPGamma_h
|
||||
#define G4NeutronHPGamma_h 1
|
||||
@@ -44,7 +43,7 @@ class G4NeutronHPGamma
|
||||
G4NeutronHPGamma();
|
||||
~G4NeutronHPGamma();
|
||||
|
||||
G4bool Init(std::ifstream & aDataFile);
|
||||
G4bool Init(std::istream & aDataFile);
|
||||
|
||||
inline void SetNext(G4NeutronHPLevel * aLevel)
|
||||
{
|
||||
@@ -91,7 +90,7 @@ class G4NeutronHPGamma
|
||||
G4double probability;
|
||||
|
||||
G4NeutronHPLevel * next;
|
||||
static int instancecount;
|
||||
static G4ThreadLocal int instancecount;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPHe3InelasticFS_h
|
||||
#define G4NeutronHPHe3InelasticFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
// Hadronic Process: High Precision low E neutron tracking
|
||||
// original by H.P. Wellisch, TRIUMF, 14-Feb-97
|
||||
@@ -96,6 +95,10 @@ class G4NeutronHPInelastic : public G4HadronicInteraction
|
||||
|
||||
virtual const std::pair<G4double, G4double> GetFatalEnergyCheckLevels() const;
|
||||
|
||||
public:
|
||||
G4int GetVerboseLevel() const;
|
||||
void SetVerboseLevel( G4int );
|
||||
|
||||
private:
|
||||
|
||||
G4double * xSec;
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPInelasticBaseFS_h
|
||||
#define G4NeutronHPInelasticBaseFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPInelasticCompFS_h
|
||||
#define G4NeutronHPInelasticCompFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
// 080417 Add IsZAApplicable method (return false) by T. Koi
|
||||
// 080428 Add bool onFlightDB by T. Koi
|
||||
@@ -80,6 +79,10 @@ class G4NeutronHPInelasticData : public G4VCrossSectionDataSet
|
||||
|
||||
void IgnoreOnFlightDopplerBroadening(){ onFlightDB = false; };
|
||||
void EnableOnFlightDopplerBroadening(){ onFlightDB = true; };
|
||||
|
||||
public:
|
||||
G4int GetVerboseLevel() const;
|
||||
void SetVerboseLevel( G4int );
|
||||
|
||||
private:
|
||||
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
// 080809 Change interpolation scheme of "histogram", now using LinearLinear
|
||||
// For multidimensional interpolations By T. Koi
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPIsoData_h
|
||||
#define G4NeutronHPIsoData_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPIsotropic_h
|
||||
#define G4NeutronHPIsotropic_h 1
|
||||
@@ -45,7 +44,7 @@ class G4NeutronHPIsotropic : public G4VNeutronHPEnergyAngular
|
||||
|
||||
public:
|
||||
|
||||
void Init(std::ifstream & aDataFile);
|
||||
void Init(std::istream & aDataFile);
|
||||
G4ReactionProduct * Sample(G4double anEnergy, G4double massCode, G4double mass);
|
||||
G4double MeanEnergyOfThisInteraction()
|
||||
{
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPKallbachMannSyst_h
|
||||
#define G4NeutronHPKallbachMannSyst_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPLCFissionFS_h
|
||||
#define G4NeutronHPLCFissionFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPLabAngularEnergy_h
|
||||
#define G4NeutronHPLabAngularEnergy_h 1
|
||||
@@ -65,7 +64,7 @@ class G4NeutronHPLabAngularEnergy : public G4VNeutronHPEnergyAngular
|
||||
|
||||
public:
|
||||
|
||||
void Init(std::ifstream & aDataFile);
|
||||
void Init(std::istream & aDataFile);
|
||||
G4ReactionProduct * Sample(G4double anEnergy, G4double massCode, G4double mass);
|
||||
G4double MeanEnergyOfThisInteraction()
|
||||
{
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPLegendreStore_h
|
||||
#define G4NeutronHPLegendreStore_h 1
|
||||
@@ -76,7 +75,7 @@ class G4NeutronHPLegendreStore
|
||||
G4double SampleMax (G4double energy);
|
||||
G4double Integrate(G4int k, G4double costh);
|
||||
|
||||
void InitInterpolation(std::ifstream & aDataFile)
|
||||
void InitInterpolation(std::istream & aDataFile)
|
||||
{
|
||||
theManager.Init(aDataFile);
|
||||
}
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPLegendreTable_h
|
||||
#define G4NeutronHPLegendreTable_h 1
|
||||
@@ -64,7 +63,7 @@ class G4NeutronHPLegendreTable
|
||||
}
|
||||
}
|
||||
|
||||
inline void Init(std::ifstream & aDataFile)
|
||||
inline void Init(std::istream & aDataFile)
|
||||
{
|
||||
G4double eNeu, coeff;
|
||||
G4int nPoly;
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPLevel_h
|
||||
#define G4NeutronHPLevel_h 1
|
||||
|
||||
@@ -58,9 +58,9 @@ class G4NeutronHPList
|
||||
|
||||
void Dump();
|
||||
|
||||
void Init(std::ifstream & aDataFile, G4int nPar, G4double unit=1.);
|
||||
void Init(std::istream & aDataFile, G4int nPar, G4double unit=1.);
|
||||
|
||||
void Init(std::ifstream & aDataFile, G4double unit=1.);
|
||||
void Init(std::istream & aDataFile, G4double unit=1.);
|
||||
|
||||
inline void SetLabel(G4double aLabel) { theLabel = aLabel; }
|
||||
|
||||
|
||||
+1
-2
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPMadlandNixSpectrum_h
|
||||
#define G4NeutronHPMadlandNixSpectrum_h 1
|
||||
@@ -56,7 +55,7 @@ class G4NeutronHPMadlandNixSpectrum : public G4VNeutronHPEDis
|
||||
{
|
||||
}
|
||||
|
||||
inline void Init(std::ifstream & aDataFile)
|
||||
inline void Init(std::istream & aDataFile)
|
||||
{
|
||||
theFractionalProb.Init(aDataFile);
|
||||
aDataFile>> theAvarageKineticPerNucleonForLightFragments;
|
||||
|
||||
@@ -48,15 +48,20 @@ class G4NeutronHPManager
|
||||
G4NeutronHPManager();
|
||||
G4NeutronHPManager( const G4NeutronHPManager& ){};
|
||||
~G4NeutronHPManager();
|
||||
static G4NeutronHPManager* instance;
|
||||
static G4ThreadLocal G4NeutronHPManager* instance;
|
||||
|
||||
public:
|
||||
G4NeutronHPReactionWhiteBoard* GetReactionWhiteBoard();
|
||||
void OpenReactionWhiteBoard();
|
||||
void CloseReactionWhiteBoard(){delete RWB; RWB=NULL;};
|
||||
|
||||
void GetDataStream( G4String , std::istringstream& iss );
|
||||
void SetVerboseLevel( G4int i );
|
||||
G4int GetVerboseLevel() {return verboseLevel; };
|
||||
|
||||
private:
|
||||
G4NeutronHPReactionWhiteBoard* RWB;
|
||||
};
|
||||
|
||||
G4int verboseLevel;
|
||||
};
|
||||
#endif
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPN2AInelasticFS_h
|
||||
#define G4NeutronHPN2AInelasticFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPN2PInelasticFS_h
|
||||
#define G4NeutronHPN2PInelasticFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPN3AInelasticFS_h
|
||||
#define G4NeutronHPN3AInelasticFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPNAInelasticFS_h
|
||||
#define G4NeutronHPNAInelasticFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPNBodyPhaseSpace_h
|
||||
#define G4NeutronHPNBodyPhaseSpace_h 1
|
||||
@@ -53,7 +52,7 @@ class G4NeutronHPNBodyPhaseSpace : public G4VNeutronHPEnergyAngular
|
||||
theTotalCount=aCount;
|
||||
}
|
||||
|
||||
void Init(std::ifstream & aDataFile)
|
||||
void Init(std::istream & aDataFile)
|
||||
{
|
||||
aDataFile >> theTotalMass >> theTotalCount;
|
||||
theTotalMass *= G4Neutron::Neutron()->GetPDGMass();
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPND2AInelasticFS_h
|
||||
#define G4NeutronHPND2AInelasticFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPNDInelasticFS_h
|
||||
#define G4NeutronHPNDInelasticFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPNHe3InelasticFS_h
|
||||
#define G4NeutronHPNHe3InelasticFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPNInelasticFS_h
|
||||
#define G4NeutronHPNInelasticFS_h 1
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id$
|
||||
//
|
||||
#ifndef G4NeutronHPNPAInelasticFS_h
|
||||
#define G4NeutronHPNPAInelasticFS_h 1
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user