[ Identification | Description | Input parameters | Links ]

The Fluorescence Component

Sample model handling absorption, fluorescence, Compton and Rayleigh scattering.

Identification

Description

Sample that models many photon-matter interactions:
- absorption          (photon excites an electron and creates a hole)
- fluorescence        (excited electrons emit light while falling into lower states)
- Compton scattering  (inelastic, transfer some energy to an electron,    incoherent)
- Rayleigh scattering (elastic,   dipolar radiation of excitated electrons, coherent)
- fluorescence detector escape  (energy shift from detector K-alpha)
- fluorescence detector pile-up (sum aka time coincidence aka pile-up in detector)

Use the FluoPowder sample component to properly handle powder diffraction with fluorescence.

The 'material' specification is given as a chemical formulae, e.g. "LaB6". It
may also be given as a file name (CIF/LAU/LAZ/FullProf format) in which case
the formulae is guessed (but may be approximative). Atoms from Z=5 to Z=90 are
handled.

By setting the 'order' to 1, the absorption along the scattered path is handled.
A higher 'order' will handle multiple scattering events, and final absorption.
For instance, a value order>=2 handles e.g. fluorescence iterative cascades
in the material. Leaving 'order=0' handles the single scattering only.

Example: Fluorescence(material="LaB6",
xwidth=0.001,yheight=0.001,zdepth=0.0001, p_interact=0.99,
target_index=1, focus_xw=0.0005, focus_yh=0.0005)

Sample shape:
Sample shape may be a cylinder, a sphere, a box or any other shape
box/plate:       xwidth x yheight x zdepth (thickness=0)
hollow box/plate:xwidth x yheight x zdepth and thickness>0
cylinder:        radius x yheight (thickness=0)
hollow cylinder: radius x yheight and thickness>0
sphere:          radius (yheight=0 thickness=0)
hollow sphere:   radius and thickness>0 (yheight=0)
any shape:       geometry=OFF file

The complex geometry option handles any closed non-convex polyhedra.
It computes the intersection points of the photon ray with the object
transparently, so that it can be used like a regular sample object.
It supports the OFF, PLY and NOFF file format but not COFF (colored faces).
Such files may be generated from XYZ data using:
qhull < coordinates.xyz Qx Qv Tv o > geomview.off
or
powercrust coordinates.xyz
and viewed with geomview or java -jar jroff.jar (see below).
The default size of the object depends of the OFF file data, but its
bounding box may be resized using xwidth,yheight and zdepth.

Concentric components:
This component has the ability to contain other components when used in
hollow cylinder geometry (namely sample environment, e.g. cryostat and
furnace structure). Such component 'shells' should be split into input and
output side surrounding the 'inside' components. First part must then use
'concentric=1' flag to enter the inside part. The component itself must be
repeated to mark the end of the concentric zone. The number of concentric
shells and number of components inside is not limited.

COMPONENT F_in = Fluorescence(material="Al", concentric=1, ...)
AT (0,0,0) RELATIVE sample_position

COMPONENT something_inside ... // e.g. the sample itself or other materials

COMPONENT F_out = COPY(F_in)(concentric=0)
AT (0,0,0) RELATIVE sample_position

Enhancing computation efficiency:
* An important option to enhance statistics is to set 'p_interact' to, say,
30 percent (0.3) in order to force a fraction of the beam to scatter. This
will result on a larger number of scattered events, retaining intensity.

In addition, it may be desirable to define a 'target' for the fluorescence
processes via e.g. the 'target_index' and the 'focus_xw / focus_yh' options.
This target should e.g. be the SDD area.

This sample component can advantageously benefit from the SPLIT feature, e.g.
SPLIT COMPONENT sample = Fluorescence(...)

Detector artifacts:
This component also simulates the escape and time coincidence peaks in a close-by
detector (e.g. SDD). The first process corresponds with a fluorescence excitation within
the detector that subtracts the K-alpha detector level from the sample scattered energy.
The second process is related to the detector dead-time, within which time coincidence
between two fluorescence photons are summed-up.
If you activate these features, with e.g. 'escape_ratio=0.01' and 'pileup_ratio=0.01', you
should further remove these contributions for the rest of the simulation beyond the
fluorescence detector, with an ABSORB keyword:

USERVARS %{
int fluo_type;
%}
COMPONENT F = Fluorescence(material="Al", escape_ratio=0.01, pileup_ratio=0.01) AT ...
EXTEND %{
if (SCATTERED) fluo_type=type;              // record type of interaction
%}

COMPONENT E_mon = Monitor_nD(options="energy", ...) AT ...
EXTEND %{
if (fluo_type>=FLUORESCENCE_ESCAPE) ABSORB; // remove detector artifacts further
%}

(...)


The computation is made via the XRayLib (apt install libxrl-dev).

Input parameters

Parameters in boldface are required; the others are optional.
NameUnitDescriptionDefault
geometrystrName of an Object File Format (OFF) or PLY file for complex geometry. The OFF/PLY file may be generated from XYZ coordinates using qhull/powercrust.0
radiusmOuter radius of sample in (x,z) plane. cylinder/sphere.0
thicknessmThickness of hollow sample Negative value extends the hollow volume outside of the box/cylinder.0
xwidthmWidth for a box sample shape.0
yheightmHeight of sample in vertical direction for box/cylinder shapes.0
zdepthmDepth for a box sample shape.0
concentric1Indicate that this component has a hollow geometry and may contain other components. It should then be duplicated after the inside part (only for box, cylinder, sphere).0
materialstrChemical formulae, e.g. "LaB6", "Pb2SnO4". If may also be a CIF/LAZ/LAU file."LaB6"
packing_factor1How dense is the material compared to bulk 0-1.0
rhoAA-3Density of scattering elements (nb atoms/unit cell V_0).0
densityg/cm^3Density of material. V_rho=density/weight/1e24*N_A.0
weightg/molAtomic/molecular weight of material.0
p_interact1Force a given fraction of the beam to scatter, keeping intensity right, to enhance small signals (-1 inactivate).0
target_xmPosition of target to focus at, along X.0
target_ymPosition of target to focus at, along Y.0
target_zmPosition of target to focus at, along Z.0
focus_rmRadius of disk containing target. Use 0 for full space.0
focus_xwmHoriz. dimension of a rectangular area.0
focus_yhmVert. dimension of a rectangular area.0
focus_awdegHoriz. angular dimension of a rectangular area.0
focus_ahdegVert. angular dimension of a rectangular area.0
target_index1Relative index of component to focus at, e.g. next is +1.0
flag_compton1When 0, the Compton scattering is ignored.1
flag_rayleigh1When 0, the Rayleigh scattering is ignored.1
flag_lorentzian1When 1, the line shapes are assumed to be Lorentzian, else Gaussian.1
escape_ratio1Detector escape peak ratio, e.g. 0.01-0.02. 0 inactivates.0
escape_energykeVDetector escape peak energy, e.g. 1.739 for Si, 9.886 for Ge.1.739
pileup_ratio1Sum aka time coincidence aka pile-up detector peak ratio, e.g. 0.01-0.02. 0 inactivates.0
order1Limit multiple fluorescence up to given order. Last iteration is absorption only.1
AT ( , , ) RELATIVE
ROTATED ( , , ) RELATIVE

Links


[ Identification | Description | Input parameters | Links ]

Generated on mcxtrace 3.5.27