75 buildAsymmetryTable(
true),
76 useAsymmetryTable(
true),
79 targetPolarization(0.0,0.0,0.0)
138 G4cout <<
" Total cross sections has a good parametrisation"
139 <<
" from 10 KeV to (100/Z) GeV"
148 if(ss ==
"Klein-Nishina") {
mType = 0; }
149 if(ss ==
"Polarized-Compton") {
mType = 10; }
165 G4cout <<
"G4PolarizedCompton::MeanFreePath: " << mfp /
mm <<
" mm " <<
G4endl;
193 G4double prvLength = iLength*satFact;
196 std::max(nLength - previousStepSize/prvLength, 0.0);
201 G4cout <<
"G4PolarizedCompton::PostStepGPIL: "
202 << std::setprecision(8) << x/
mm <<
" mm;" <<
G4endl
203 <<
" unpolarized value: "
204 << std::setprecision(8) << x0/
mm <<
" mm." <<
G4endl;
231 if (VolumeIsPolarized) {
234 G4cout <<
"G4PolarizedCompton::ComputeSaturationFactor: " <<
G4endl;
236 G4cout <<
" Polarization " << GammaPolarization <<
G4endl;
237 G4cout <<
" MaterialPol. " << ElectronPolarization <<
G4endl;
245 if(midx < theAsymmetryTable->size()) {
246 aVector = (*theAsymmetryTable)(midx);
256 G4double pol = ElectronPolarization*GammaDirection0;
257 G4double polProduct = GammaPolarization.
p3() * pol;
258 factor /= (1. + polProduct * asymmetry);
266 ed <<
"Problem with asymmetry table: material index " << midx
267 <<
" is out of range or the table is not filled";
268 G4Exception(
"G4PolarizedComptonModel::ComputeSaturationFactor",
"em0048",
285 if(masterProcess && masterProcess !=
this) { isMaster =
false; }
310 for(
size_t i=0; i<numOfCouples; ++i) {
324 for (
G4int j = 0; j <= nbins; ++j ) {
364 lAsymmetry = sigma2/sigma0-1.;