96{
97 auto xs = new G4ChargeExchangeXS();
98 xs->SetEnergyLimit(fLowEnergyLimit);
99 xs->SetCrossSectionFactor(fXSFactor);
100
101 auto model = new G4ChargeExchange(xs);
102
104 G4cout <<
"### ChargeExchangePhysics Construct Processes with the model <"
105 << model->GetModelName() << "> and x-section <"
106 << xs->GetName() << "> XSFactor=" << fXSFactor
108 }
109
110
112 auto proc =
113 new G4HadronInelasticProcess(part->
GetParticleName()+
"ChargeEx", part);
114 proc->AddDataSet( xs );
115 proc->RegisterMe( model );
118
119
121 proc =
new G4HadronInelasticProcess(part->
GetParticleName()+
"ChargeEx", part);
122 proc->AddDataSet( xs );
123 proc->RegisterMe( model );
126
127
129 proc =
new G4HadronInelasticProcess(part->
GetParticleName()+
"ChargeEx", part);
130 proc->AddDataSet( xs );
131 proc->RegisterMe( model );
134
135
136
138 proc =
new G4HadronInelasticProcess(part->
GetParticleName()+
"ChargeEx", part);
139 proc->AddDataSet( xs );
140 proc->RegisterMe( model );
143
144
146 proc =
new G4HadronInelasticProcess(part->
GetParticleName()+
"ChargeEx", part);
147 proc->AddDataSet( xs );
148 proc->RegisterMe( model );
151}
static G4KaonMinus * KaonMinus()
static G4KaonPlus * KaonPlus()
static G4KaonZeroLong * KaonZeroLong()
G4ProcessManager * GetProcessManager() const
const G4String & GetParticleName() const
static G4PionMinus * PionMinus()
static G4PionPlus * PionPlus()
G4int AddDiscreteProcess(G4VProcess *aProcess, G4int ord=ordDefault)
G4int GetVerboseLevel() const