10namespace biasoperators {
21 const G4Track* track,
const G4BiasingProcessInterface* callingProcess) {
26 std::string current_process =
27 callingProcess->GetWrappedProcess()->GetProcessName();
28 if (current_process.compare(this->getProcessToBias()) == 0) {
29 G4double interaction_length =
30 callingProcess->GetWrappedProcess()->GetCurrentInteractionLength();
32 double xsec_unbiased = 1. / interaction_length;
33 double xsec_biased = xsec_unbiased *
factor_;
Biasing operator for the A' -> fcp+ fcp- process.
Class encapsulating parameters for configuring a processor.
const T & get(const std::string &name) const
Retrieve the parameter of the given name.
Our specialization of the biasing operator used with Geant4.
G4VBiasingOperation * BiasedXsec(double biased_xsec)
Helper method for passing a biased interaction length to the Geant4 biasing framework.
Bias the A' -> fcp+ fcp- process.
APrimeToFCPPair(std::string name, const framework::config::Parameters &p)
Constructor.
G4VBiasingOperation * ProposeOccurenceBiasingOperation(const G4Track *track, const G4BiasingProcessInterface *callingProcess) override
double factor_
The biasing factor.
double threshold_
Minimum kinetic energy [MeV] to allow a track to be biased.
std::string volume_
The volume to bias in.
Dynamically loadable photonuclear models either from SimCore or external libraries implementing this ...