Geant4_10
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
source
source
processes
electromagnetic
polarisation
include
G4PolarizedComptonCrossSection.hh
Go to the documentation of this file.
1
//
2
// ********************************************************************
3
// * License and Disclaimer *
4
// * *
5
// * The Geant4 software is copyright of the Copyright Holders of *
6
// * the Geant4 Collaboration. It is provided under the terms and *
7
// * conditions of the Geant4 Software License, included in the file *
8
// * LICENSE and available at http://cern.ch/geant4/license . These *
9
// * include a list of copyright holders. *
10
// * *
11
// * Neither the authors of this software system, nor their employing *
12
// * institutes,nor the agencies providing financial support for this *
13
// * work make any representation or warranty, express or implied, *
14
// * regarding this software system or assume any liability for its *
15
// * use. Please see the license in the file LICENSE and URL above *
16
// * for the full disclaimer and the limitation of liability. *
17
// * *
18
// * This code implementation is the result of the scientific and *
19
// * technical work of the GEANT4 collaboration. *
20
// * By using, copying, modifying or distributing the software (or *
21
// * any work based on the software) you agree to acknowledge its *
22
// * use in resulting scientific publications, and indicate your *
23
// * acceptance of all terms of the Geant4 Software license. *
24
// ********************************************************************
25
//
26
// $Id: G4PolarizedComptonCrossSection.hh 68046 2013-03-13 14:31:38Z gcosmo $
27
//
28
// GEANT4 Class file
29
//
30
//
31
// File name: G4PolarizedComptonCrossSection
32
//
33
// Author: Andreas Schaelicke
34
//
35
// Creation date: 15.05.2005
36
//
37
// Modifications:
38
// 18-07-06 use newly calculated cross sections (P. Starovoitov)
39
// 21-08-06 update interface to geant4.8.1 (A. Schaelicke)
40
// 15-10-07 introduced a more general framework for cross sections (AS)
41
//
42
//
43
// Class Description:
44
// determine the polarization of the final state
45
// in a Compton scattering process employing the differential
46
// cross section by F.W.Lipps & H.A.Tolhoek
47
// ( Physica 20 (1954) 395 )
48
//
49
#ifndef G4PolarizedComptonCrossSection_h
50
#define G4PolarizedComptonCrossSection_h 1
51
52
#include "
G4StokesVector.hh
"
53
#include "
G4VPolarizedCrossSection.hh
"
54
55
56
57
class
G4PolarizedComptonCrossSection
:
public
G4VPolarizedCrossSection
58
{
59
public
:
60
G4PolarizedComptonCrossSection
();
61
virtual
~G4PolarizedComptonCrossSection
();
62
public
:
63
// prepares the ingredients for the calculation of a polarization
64
// dependent differential cross section
65
// the kinematics is fixed (X - incoming photon energy in units of electron mass, eps - outgoing photon energy in unit of incoming photon energy,
66
// and polarization of the incoming particles fixed (p0, p1)
67
// a flag specifies the extent to which polarization is taken
68
// into account
69
virtual
void
Initialize
(
G4double
eps,
G4double
X
,
G4double
phi,
70
const
G4StokesVector
& p0,
71
const
G4StokesVector
& p1,
72
G4int
flag=0);
73
74
// returns the differential cross section for a given polarisation state
75
// of the final state particles to be used in the calculation of the
76
// polarization transfer
77
// the calculation has to be initialised by calling Initialize()
78
// prior to the first call of this function (see above)
79
G4double
XSection
(
const
G4StokesVector
& pol2,
const
G4StokesVector
& pol3);
80
// total cross section
81
G4double
TotalXSection
(
G4double
xmin,
G4double
xmax,
G4double
y
,
82
const
G4StokesVector
& pol0,
const
G4StokesVector
& pol1);
83
84
public
:
85
// return expected mean polarisation
86
G4StokesVector
GetPol2
();
87
G4StokesVector
GetPol3
();
88
private
:
89
void
DefineCoefficients(
const
G4StokesVector
& pol0,
90
const
G4StokesVector
& pol1);
91
// states if an incoming or outgoing particle is polarized
92
G4bool
gammaPol2, electronPol3;
93
94
// these variables store the information necessary to evaluate the
95
// differential cross section for arbitrary final state
96
// polarizations (used in XSection):
97
// - polarization independent part
98
G4double
phi0;
99
// - part depending on the polarization of the final photon
100
G4ThreeVector
phi2;
101
// - part depending on the polarization of the final electron
102
G4ThreeVector
phi3;
103
// - product of polarizations of initial particles
104
G4double
polxx, polyy, polzz, polxz, polzx, polyz, polzy, polxy, polyx;
105
106
G4double
diffXSFactor, totalXSFactor, re2;
107
G4double
polXS, unpXS;
108
};
109
110
111
#endif
CLHEP::Hep3Vector
Definition:
ThreeVector.h:41
G4PolarizedComptonCrossSection::XSection
G4double XSection(const G4StokesVector &pol2, const G4StokesVector &pol3)
Definition:
G4PolarizedComptonCrossSection.cc:159
G4StokesVector.hh
G4int
int G4int
Definition:
G4Types.hh:78
G4VPolarizedCrossSection.hh
X
Float_t X
Definition:
plot.C:39
y
Double_t y
Definition:
plot.C:279
G4PolarizedComptonCrossSection::GetPol3
G4StokesVector GetPol3()
Definition:
G4PolarizedComptonCrossSection.cc:223
G4PolarizedComptonCrossSection::GetPol2
G4StokesVector GetPol2()
Definition:
G4PolarizedComptonCrossSection.cc:214
G4bool
bool G4bool
Definition:
G4Types.hh:79
G4StokesVector
Definition:
G4StokesVector.hh:58
G4PolarizedComptonCrossSection::TotalXSection
G4double TotalXSection(G4double xmin, G4double xmax, G4double y, const G4StokesVector &pol0, const G4StokesVector &pol1)
Definition:
G4PolarizedComptonCrossSection.cc:186
G4PolarizedComptonCrossSection::Initialize
virtual void Initialize(G4double eps, G4double X, G4double phi, const G4StokesVector &p0, const G4StokesVector &p1, G4int flag=0)
Definition:
G4PolarizedComptonCrossSection.cc:74
G4PolarizedComptonCrossSection
Definition:
G4PolarizedComptonCrossSection.hh:57
G4PolarizedComptonCrossSection::~G4PolarizedComptonCrossSection
virtual ~G4PolarizedComptonCrossSection()
Definition:
G4PolarizedComptonCrossSection.cc:70
G4PolarizedComptonCrossSection::G4PolarizedComptonCrossSection
G4PolarizedComptonCrossSection()
Definition:
G4PolarizedComptonCrossSection.cc:51
G4VPolarizedCrossSection
Definition:
G4VPolarizedCrossSection.hh:50
G4double
double G4double
Definition:
G4Types.hh:76
Generated on Sat Dec 14 2013 14:34:35 for Geant4_10 by
1.8.5