49 cout<<
"G4PolarizedPEEffectCrossSection() init\n";
81 G4double Gfactor_2 = Gfactor * Gfactor;
83 G4double BETA = sqrt(1. - 1./(Gfactor_2));
88 G4double Lept0E = aLept0E/m0_c2+1., Lept0E2 = Lept0E * Lept0E ;
94 G4double cosTheta = std::sqrt(1. - sinTheta*sinTheta);
96 G4double D_Lepton0 = (1./GammaE) * ((2./(GammaE*Lept0E*(1-BETA*cosTheta)))-1.);
100 G4double A_Lepton0 = (Lept0E/(Lept0E+1))*(2.0/(GammaE*Lept0E)
102 +(2.0/((GammaE*Lept0E2)*(1.0-BETA*cosTheta)))) / I_Lepton0 ;
104 G4double B_Lepton0 = (Lept0E/(Lept0E+1.0)) * BETA * sinTheta * (2.0/(GammaE*Lept0E*(1-BETA*cosTheta))-1.0)/I_Lepton0;
106 G4double Stokes_S1 = (Stokes_P3 * B_Lepton0) ;
108 G4double Stokes_S3 = (Stokes_P3 * A_Lepton0) ;
111 theFinalElectronPolarization.setX(Stokes_S1);
112 theFinalElectronPolarization.setY(Stokes_S2);
113 theFinalElectronPolarization.setZ(Stokes_S3);
115 if((theFinalElectronPolarization.x()*theFinalElectronPolarization.x()
116 + theFinalElectronPolarization.y()* theFinalElectronPolarization.y()
117 + theFinalElectronPolarization.z()* theFinalElectronPolarization.z())>1)
120 cout<<
"Warning: PhotoelectricEffect Problem in pol-transfer photon to lepton:Px2 + Py2 + Pz2 > 1"<<endl;
121 cout<<
"Polarization transfer forced to be total and similar as incoming Photo"<<endl;
123 theFinalElectronPolarization = beamPol;
143 cout<<
"ERROR dummy routine G4PolarizedPEEffectCrossSection::XSection() called\n";
151 return theFinalElectronPolarization;