The mean number of X-ray Cherenkov radiation (XCR) photons of frequency
emitted into an angle
per unit distance along a particle
trajectory is [1]
Introducing a complex quantity
with its imaginary part proportional to
the absorption cross-section (
) is required in order to account
for absorption in the medium. Usually,
. Then it can be seen from Eqs.
7.63 and 7.64 that the number of emitted XCR photons is
considerably suppressed and disappears in the limit of a transparent
medium. This is caused by the destructive interference between the photons
emitted from different parts of the particle trajectory.
The destructive interference of X-ray Cherenkov radiation is removed if
the particle crosses a boundary between two media with different
dielectric permittivities,
, where
If layers of media are alternated with spacings of order
, the X-ray
radiation yield from a trajectory of unit length can be increased by roughly
times. The radiation produced in this case is called X-ray transition
radiation (XTR).
Using the methods developed in Ref. [2] one can derive the relation
describing the mean number of XTR photons generated per unit photon
frequency and
inside the radiator for a general XTR
radiator consisting of
different absorbing media with fluctuating
thicknesses:
In the particular case of
foils of the first medium (
)
interspersed with gas gaps of the second medium (
), one obtains:
A typical XTR radiator consits of many (
) boundaries between different
materials. To improve the tracking performance in such a volume one can introduce
an artificial material [6], which is the geometrical mixture of foil and
gas contents. Here is an example:
// In DetectorConstruction of an application
// Preparation of mixed radiator material
foilGasRatio = fRadThickness/(fRadThickness+fGasGap);
foilDensity = 1.39*g/cm3; // Mylar
gasDensity = 1.2928*mg/cm3 ; // Air
totDensity = foilDensity*foilGasRatio +
gasDensity*(1.0-foilGasRatio);
fractionFoil = foilDensity*foilGasRatio/totDensity;
fractionGas = gasDensity*(1.0-foilGasRatio)/totDensity;
G4Material* radiatorMat = new G4Material("radiatorMat",
totDensity,
ncomponents = 2 );
radiatorMat->AddMaterial( Mylar, fractionFoil );
radiatorMat->AddMaterial( Air, fractionGas );
G4cout << *(G4Material::GetMaterialTable()) << G4endl;
// materials of the TR radiator
fRadiatorMat = radiatorMat; // artificial for geometry
fFoilMat = Mylar;
fGasMat = Air;
This artificial material will be assigned to the logical volume in which XTR will be generated:
solidRadiator = new G4Box("Radiator",
1.1*AbsorberRadius ,
1.1*AbsorberRadius,
0.5*radThick );
logicRadiator = new G4LogicalVolume( solidRadiator,
fRadiatorMat, // !!!
"Radiator");
physiRadiator = new G4PVPlacement(0,
G4ThreeVector(0,0,zRad),
"Radiator", logicRadiator,
physiWorld, false, 0 );
XTR photons generated by a relativistic charged particle intersecting a
radiator with
interfaces between different media can be simulated by
using the following algorithm. First the total number of XTR photons is
estimated using a Poisson distribution about the mean number of photons
given by the following expression:
In the physics list one should pass to the XTR process additional details of the XTR radiator involved:
// In PhysicsList of an application
else if (particleName == "e-") // Construct processes for electron with XTR
{
pmanager->AddProcess(new G4MultipleScattering, -1, 1,1 );
pmanager->AddProcess(new G4eBremsstrahlung(), -1,-1,1 );
pmanager->AddProcess(new Em10StepCut(), -1,-1,1 );
// in regular radiators:
pmanager->AddDiscreteProcess(
new G4RegularXTRadiator // XTR dEdx in general regular radiator
// new G4XTRRegularRadModel - XTR flux after general regular radiator
// new G4TransparentRegXTRadiator - XTR dEdx in transparent
// regular radiator
// new G4XTRTransparentRegRadModel - XTR flux after transparent
// regular radiator
(pDet->GetLogicalRadiator(), // XTR radiator
pDet->GetFoilMaterial(), // real foil
pDet->GetGasMaterial(), // real gas
pDet->GetFoilThick(), // real geometry
pDet->GetGasThick(),
pDet->GetFoilNumber(),
"RegularXTRadiator"));
// or for foam/fiber radiators:
pmanager->AddDiscreteProcess(
new G4GammaXTRadiator - XTR dEdx in general foam/fiber radiator
// new G4XTRGammaRadModel - XTR flux after general foam/fiber radiator
( pDet->GetLogicalRadiator(),
1000.,
100.,
pDet->GetFoilMaterial(),
pDet->GetGasMaterial(),
pDet->GetFoilThick(),
pDet->GetGasThick(),
pDet->GetFoilNumber(),
"GammaXTRadiator"));
}
Here for the foam/fiber radiators the values 1000 and 100 are the
item G.M. Garibyan, Sov. Phys. JETP 32 (1971) 23.