52 #ifndef G4PolarizedComptonModel_h
53 #define G4PolarizedComptonModel_h 1
67 const G4String& nam =
"Polarized-Compton");
G4PolarizedComptonModel(const G4ParticleDefinition *p=nullptr, const G4String &nam="Polarized-Compton")
CLHEP::Hep3Vector G4ThreeVector
G4StokesVector theTargetPolarization
G4StokesVector finalGammaPolarization
const G4ThreeVector & GetFinalGammaPolarization() const
G4StokesVector finalElectronPolarization
double A(double temperature)
virtual void SampleSecondaries(std::vector< G4DynamicParticle * > *, const G4MaterialCutsCouple *, const G4DynamicParticle *, G4double tmin, G4double maxEnergy) override
G4PolarizedComptonCrossSection * crossSectionCalculator
void PrintWarning(const G4DynamicParticle *, G4int, G4double grej, G4double onecos, G4double phi, const G4String) const
static const G4double emax
const G4ThreeVector & GetTargetPolarization() const
G4PolarizedComptonModel & operator=(const G4PolarizedComptonModel &right)=delete
G4double ComputeAsymmetryPerAtom(G4double gammaEnergy, G4double Z)
void SetBeamPolarization(const G4ThreeVector &pBeam)
const G4ThreeVector & GetBeamPolarization() const
G4StokesVector theBeamPolarization
virtual ~G4PolarizedComptonModel()
const G4ThreeVector & GetFinalElectronPolarization() const
void SetTargetPolarization(const G4ThreeVector &pTarget)
virtual G4double ComputeCrossSectionPerAtom(const G4ParticleDefinition *, G4double kinEnergy, G4double Z, G4double A, G4double cut, G4double emax) override