Import Geant4 10.3.0.beta source tree
This commit is contained in:
@@ -29,7 +29,8 @@
|
||||
|
||||
|
||||
G4BOptnChangeCrossSection::G4BOptnChangeCrossSection(G4String name)
|
||||
: G4VBiasingOperation(name)
|
||||
: G4VBiasingOperation( name ),
|
||||
fInteractionOccured( false )
|
||||
{
|
||||
fBiasedExponentialLaw = new G4InteractionLawPhysical("LawForOperation"+name);
|
||||
}
|
||||
|
||||
@@ -27,9 +27,11 @@
|
||||
|
||||
|
||||
G4BOptnCloning::G4BOptnCloning(G4String name)
|
||||
: G4VBiasingOperation(name),
|
||||
: G4VBiasingOperation( name ),
|
||||
fClone1W ( -1.0 ),
|
||||
fClone2W ( -1.0 ),
|
||||
fParticleChange(),
|
||||
fCloneTrack(nullptr)
|
||||
fCloneTrack ( nullptr )
|
||||
{}
|
||||
|
||||
G4BOptnCloning::~G4BOptnCloning()
|
||||
|
||||
@@ -33,7 +33,10 @@
|
||||
|
||||
G4BOptnForceCommonTruncatedExp::G4BOptnForceCommonTruncatedExp(G4String name)
|
||||
: G4VBiasingOperation(name),
|
||||
fInteractionOccured(false)
|
||||
fNumberOfSharing(0),
|
||||
fProcessToApply(nullptr),
|
||||
fInteractionOccured(false),
|
||||
fMaximumDistance(-1.0)
|
||||
{
|
||||
fCommonTruncatedExpLaw = new G4ILawCommonTruncatedExp("ExpLawForOperation"+name);
|
||||
fForceFreeFlightLaw = new G4ILawForceFreeFlight ("FFFLawForOperation"+name);
|
||||
@@ -47,8 +50,9 @@ G4BOptnForceCommonTruncatedExp::~G4BOptnForceCommonTruncatedExp()
|
||||
if ( fForceFreeFlightLaw ) delete fForceFreeFlightLaw;
|
||||
}
|
||||
|
||||
const G4VBiasingInteractionLaw* G4BOptnForceCommonTruncatedExp::ProvideOccurenceBiasingInteractionLaw( const G4BiasingProcessInterface* callingProcess,
|
||||
G4ForceCondition& proposeForceCondition )
|
||||
const G4VBiasingInteractionLaw* G4BOptnForceCommonTruncatedExp::
|
||||
ProvideOccurenceBiasingInteractionLaw( const G4BiasingProcessInterface* callingProcess,
|
||||
G4ForceCondition& proposeForceCondition )
|
||||
{
|
||||
if ( callingProcess->GetWrappedProcess() == fProcessToApply )
|
||||
{
|
||||
|
||||
@@ -31,8 +31,10 @@
|
||||
|
||||
|
||||
G4BOptnForceFreeFlight::G4BOptnForceFreeFlight(G4String name)
|
||||
: G4VBiasingOperation(name),
|
||||
fOperationComplete(true)
|
||||
: G4VBiasingOperation ( name ),
|
||||
fCumulatedWeightChange ( -1.0 ),
|
||||
fInitialTrackWeight ( -1.0 ),
|
||||
fOperationComplete ( true )
|
||||
{
|
||||
fForceFreeFlightInteractionLaw = new G4ILawForceFreeFlight("LawForOperation"+name);
|
||||
}
|
||||
|
||||
@@ -46,7 +46,9 @@
|
||||
G4BOptrForceCollision::G4BOptrForceCollision(G4String particleName, G4String name)
|
||||
: G4VBiasingOperator(name),
|
||||
fForceCollisionModelID(-1),
|
||||
fCurrentTrack(nullptr),
|
||||
fCurrentTrackData(nullptr),
|
||||
fInitialTrackWeight(-1.0),
|
||||
fSetup(true)
|
||||
{
|
||||
fSharedForceInteractionOperation = new G4BOptnForceCommonTruncatedExp("SharedForceInteraction");
|
||||
@@ -68,7 +70,9 @@ G4BOptrForceCollision::G4BOptrForceCollision(G4String particleName, G4String nam
|
||||
G4BOptrForceCollision::G4BOptrForceCollision(const G4ParticleDefinition* particle, G4String name)
|
||||
: G4VBiasingOperator(name),
|
||||
fForceCollisionModelID(-1),
|
||||
fCurrentTrack(nullptr),
|
||||
fCurrentTrackData(nullptr),
|
||||
fInitialTrackWeight(-1.0),
|
||||
fSetup(true)
|
||||
{
|
||||
fSharedForceInteractionOperation = new G4BOptnForceCommonTruncatedExp("SharedForceInteraction");
|
||||
|
||||
@@ -27,7 +27,6 @@
|
||||
#include "G4VBiasingOperator.hh"
|
||||
#include "G4VBiasingOperation.hh"
|
||||
#include "G4ParticleChangeForOccurenceBiasing.hh"
|
||||
#include "G4ParticleChange.hh"
|
||||
#include "G4ParticleChangeForNothing.hh"
|
||||
#include "G4VBiasingInteractionLaw.hh"
|
||||
#include "G4InteractionLawPhysical.hh"
|
||||
@@ -42,19 +41,34 @@ G4MapCache< const G4ProcessManager*, G4BiasingProcessSharedData* > G4BiasingProc
|
||||
|
||||
|
||||
G4BiasingProcessInterface::G4BiasingProcessInterface(G4String name)
|
||||
: G4VProcess ( name ),
|
||||
fWrappedProcess ( 0 ),
|
||||
fIsPhysicsBasedBiasing ( false ),
|
||||
fWrappedProcessIsAtRest ( false ),
|
||||
fWrappedProcessIsAlong ( false ),
|
||||
fWrappedProcessIsPost ( false ),
|
||||
fWrappedProcessInteractionLength( -1.0 ),
|
||||
fBiasingInteractionLaw ( 0 ),
|
||||
fPhysicalInteractionLaw ( 0 ),
|
||||
fOccurenceBiasingParticleChange ( 0 ),
|
||||
fIamFirstGPIL ( false ),
|
||||
fSharedData ( 0 )
|
||||
|
||||
: G4VProcess ( name ),
|
||||
fCurrentTrack ( nullptr ),
|
||||
fPreviousStepSize (-1.0), fCurrentMinimumStep( -1.0 ), fProposedSafety ( -1.0),
|
||||
fOccurenceBiasingOperation( nullptr ), fFinalStateBiasingOperation( nullptr ), fNonPhysicsBiasingOperation( nullptr ),
|
||||
fPreviousOccurenceBiasingOperation( nullptr ), fPreviousFinalStateBiasingOperation( nullptr ), fPreviousNonPhysicsBiasingOperation( nullptr ),
|
||||
fResetWrappedProcessInteractionLength( true ),
|
||||
fWrappedProcess ( nullptr ),
|
||||
fIsPhysicsBasedBiasing ( false ),
|
||||
fWrappedProcessIsAtRest ( false ),
|
||||
fWrappedProcessIsAlong ( false ),
|
||||
fWrappedProcessIsPost ( false ),
|
||||
fWrappedProcessPostStepGPIL ( -1.0 ),
|
||||
fBiasingPostStepGPIL ( -1.0 ),
|
||||
fWrappedProcessInteractionLength ( -1.0 ),
|
||||
fWrappedProcessForceCondition ( NotForced ),
|
||||
fBiasingForceCondition ( NotForced ),
|
||||
fWrappedProcessAlongStepGPIL ( -1.0 ),
|
||||
fBiasingAlongStepGPIL ( -1.0 ),
|
||||
fWrappedProcessGPILSelection ( NotCandidateForSelection ),
|
||||
fBiasingGPILSelection ( NotCandidateForSelection ),
|
||||
fBiasingInteractionLaw ( nullptr ),
|
||||
fPreviousBiasingInteractionLaw ( nullptr ),
|
||||
fPhysicalInteractionLaw ( nullptr ),
|
||||
fOccurenceBiasingParticleChange ( nullptr ),
|
||||
fDummyParticleChange ( nullptr ),
|
||||
fIamFirstGPIL ( false ),
|
||||
fProcessManager ( nullptr ),
|
||||
fSharedData ( nullptr )
|
||||
{
|
||||
for (G4int i = 0 ; i < 8 ; i++) fFirstLastFlags[i] = false;
|
||||
fResetInteractionLaws.Put( true );
|
||||
@@ -69,17 +83,32 @@ G4BiasingProcessInterface::G4BiasingProcessInterface(G4VProcess* wrappedProcess,
|
||||
G4String useThisName)
|
||||
: G4VProcess( useThisName != "" ? useThisName : "biasWrapper("+wrappedProcess->GetProcessName()+")",
|
||||
wrappedProcess->GetProcessType()),
|
||||
fWrappedProcess ( wrappedProcess ),
|
||||
fIsPhysicsBasedBiasing ( true ),
|
||||
fWrappedProcessIsAtRest ( wrappedIsAtRest ),
|
||||
fWrappedProcessIsAlong ( wrappedIsAlongStep ),
|
||||
fWrappedProcessIsPost ( wrappedIsPostStep ),
|
||||
fWrappedProcessInteractionLength( -1.0 ),
|
||||
fBiasingInteractionLaw ( 0 ),
|
||||
fPhysicalInteractionLaw ( 0 ),
|
||||
fOccurenceBiasingParticleChange ( 0 ),
|
||||
fIamFirstGPIL ( false ),
|
||||
fSharedData ( 0 )
|
||||
fCurrentTrack ( nullptr ),
|
||||
fPreviousStepSize (-1.0), fCurrentMinimumStep( -1.0 ), fProposedSafety ( -1.0),
|
||||
fOccurenceBiasingOperation( nullptr ), fFinalStateBiasingOperation( nullptr ), fNonPhysicsBiasingOperation( nullptr ),
|
||||
fPreviousOccurenceBiasingOperation( nullptr ), fPreviousFinalStateBiasingOperation( nullptr ), fPreviousNonPhysicsBiasingOperation( nullptr ),
|
||||
fResetWrappedProcessInteractionLength ( false ),
|
||||
fWrappedProcess ( wrappedProcess ),
|
||||
fIsPhysicsBasedBiasing ( true ),
|
||||
fWrappedProcessIsAtRest ( wrappedIsAtRest ),
|
||||
fWrappedProcessIsAlong ( wrappedIsAlongStep ),
|
||||
fWrappedProcessIsPost ( wrappedIsPostStep ),
|
||||
fWrappedProcessPostStepGPIL ( -1.0 ),
|
||||
fBiasingPostStepGPIL ( -1.0 ),
|
||||
fWrappedProcessInteractionLength ( -1.0 ),
|
||||
fWrappedProcessForceCondition ( NotForced ),
|
||||
fBiasingForceCondition ( NotForced ),
|
||||
fWrappedProcessAlongStepGPIL ( -1.0 ),
|
||||
fBiasingAlongStepGPIL ( -1.0 ),
|
||||
fWrappedProcessGPILSelection ( NotCandidateForSelection ),
|
||||
fBiasingGPILSelection ( NotCandidateForSelection ),
|
||||
fBiasingInteractionLaw ( nullptr ),
|
||||
fPreviousBiasingInteractionLaw ( nullptr ),
|
||||
fPhysicalInteractionLaw ( nullptr ),
|
||||
fOccurenceBiasingParticleChange ( nullptr ),
|
||||
fIamFirstGPIL ( false ),
|
||||
fProcessManager ( nullptr ),
|
||||
fSharedData ( nullptr )
|
||||
{
|
||||
for (G4int i = 0 ; i < 8 ; i++) fFirstLastFlags[i] = false;
|
||||
fResetInteractionLaws.Put( true );
|
||||
@@ -93,7 +122,6 @@ G4BiasingProcessInterface::G4BiasingProcessInterface(G4VProcess* wrappedProcess,
|
||||
fPhysicalInteractionLaw = new G4InteractionLawPhysical("PhysicalInteractionLawFor("+GetProcessName()+")");
|
||||
// -- instantiate particle change wrapper for occurence biaising:
|
||||
fOccurenceBiasingParticleChange = new G4ParticleChangeForOccurenceBiasing("biasingPCfor"+GetProcessName());
|
||||
fParticleChange = new G4ParticleChange();
|
||||
// -- instantiate a "do nothing" particle change:
|
||||
fDummyParticleChange = new G4ParticleChangeForNothing();
|
||||
}
|
||||
@@ -104,7 +132,6 @@ G4BiasingProcessInterface::~G4BiasingProcessInterface()
|
||||
{
|
||||
if ( fPhysicalInteractionLaw != 0 ) delete fPhysicalInteractionLaw;
|
||||
if ( fOccurenceBiasingParticleChange ) delete fOccurenceBiasingParticleChange;
|
||||
if ( fParticleChange ) delete fParticleChange;
|
||||
if ( fDummyParticleChange ) delete fDummyParticleChange;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user