Sets polarization of a beam if spin-tracking is enabled
Parallel capable? : yes
GPU capable? : no
Back-tracking capable? : no
Spin-tracking capable? : yes
| Parameter Name | Units | Type | Default | Description |
| POLARIZATION | double | 0.0 | desired polarization |
|
| VX | double | 0.0 | x component of vector for polarization direction |
|
| VY | double | 0.0 | y component of vector for polarization direction |
|
| VZ | double | 0.0 | z component of vector for polarization direction |
|
| MODE | STRING | twostate | mode of spin vector generation (twostate, narrowcone, widecone) |
|
| ON_PASS | NULL | long | 0 | If <0, polarization is unchanged; otherwise, pass on which polarization is changed. |
| GROUP | string | NULL | Optionally used to assign an element to a group, with a user-defined name. Group names will appear in the parameter output file in the column ElementGroup |
|
This element assigns spin vectors to the particles to provide a specified degree of polarization P in a
specified direction
=
∕V , where
= (V X,V Y,V Z). It has no effect if spin_tracking=0 in
run_setup.
There are four available modes, controlled by the MODE parameter:
or -
, with the two states being randomly assigned
so as to approximately produce the specified polarization. For example, for P = 0.85 (85%
polarization) 92.5% of the spins vectors are
and 7.5% are -
.
, but with a polar angle θ such that
cosθ = P. The azimuthal angle is uniformly distributed over [0,2π).
, but with a randomly-chosen,
uniformly-distributed polar angle θ in the range [0,θ1], with θ1 chosen so that that ⟨cosθ⟩ = P.
The azimuthal angle is uniformly distributed over [0,2π).
POLYSERIES