37#ifndef G4PolarizedComptonModel_h
38#define G4PolarizedComptonModel_h 1
55 const G4String& nam =
"Polarized-Compton");
87 static constexpr G4int fLoopLim = 10000;
115 return fTargetPolarization;
119 return fBeamPolarization;
124 return fFinalGammaPolarization;
129 return finalElectronPolarization;
void SetTargetPolarization(const G4ThreeVector &pTarget)
const G4ThreeVector & GetTargetPolarization() const
virtual void SampleSecondaries(std::vector< G4DynamicParticle * > *, const G4MaterialCutsCouple *, const G4DynamicParticle *, G4double tmin, G4double maxEnergy) override
void SetBeamPolarization(const G4ThreeVector &pBeam)
G4double ComputeAsymmetryPerAtom(G4double gammaEnergy, G4double Z)
const G4ThreeVector & GetFinalGammaPolarization() const
G4PolarizedComptonModel(const G4ParticleDefinition *p=nullptr, const G4String &nam="Polarized-Compton")
virtual ~G4PolarizedComptonModel() override
G4PolarizedComptonModel & operator=(const G4PolarizedComptonModel &right)=delete
virtual G4double ComputeCrossSectionPerAtom(const G4ParticleDefinition *, G4double kinEnergy, G4double Z, G4double A, G4double cut, G4double emax) override
const G4ThreeVector & GetFinalElectronPolarization() const
G4PolarizedComptonModel(const G4PolarizedComptonModel &)=delete
const G4ThreeVector & GetBeamPolarization() const