Based on Guide_curved written by Ross Stewart.
Models a rectangular curved guide tube with entrance centered on the Z axis.
The entrance lies in the X-Y plane. Draws a true depiction
of the guide with multiple slits (but without spacers), and trajectories.
It relies on similar physics as the Monochromator_pol.
The reflec function and parameters are passed to this component to
give a bigger freedom.
The up direction is hardcoded to be along the y-axis (0, 1, 0)
The guide is asummed to have half a spacer on each side:
slit1 slit2 slit3
|+ ++ ++ +|
|+ ++ ++ +|
<---------------------> xwidth
<------> xwidth/nslit (nslit=3)
<> d
The reflection functions and parameters defaults as follows:
Bot defaults to Top, Left defaults to Top, Right defaults to left.
Down defaults to down and up defaults to up for all functions and
Top(Up and Down) defaults to StdReflecFunc and {0.99,0.0219,6.07,2.0,0.003}
which stands for {R0, Qc, alpha, m, W}.
Example:
Pol_bender(xwidth = 0.08, yheight = 0.08, length = 1.0, radius= 10.0,
nslit=5, d=0.0, endFlat=0, drawOption=2,
rTopUpPar={0.99, 0.0219, 6.07, 3.0, 0.003},
rTopDownPar={0.99, 0.0219, 6.07, 1.0, 0.003})
See also the example instruments Test_Pol_Bender and
Test_Pol_Bender_Vs_Guide_Curved (under tests).
%BUGS
This component has been against tested Guide_curved and found to
give the same intensities. Gravity option has not been tested.
GRAVITY: YES (when gravity is along y-axis)
Input parameters
Parameters in boldface are required;
the others are optional.
Name
Unit
Description
Default
rTopUpFunc
1
Top reflection function for spin up (q, *par, *reflecProb)
StdReflecFunc
rTopDownFunc
1
Top reflection function for spin down (q, *par, *reflecProb)
StdReflecFunc
rBotUpFunc
rTopUpFunc
rBotDownFunc
rTopDownFunc
rLeftUpFunc
rTopUpFunc
rLeftDownFunc
rTopDownFunc
rRightUpFunc
rLeftUpFunc
rRightDownFunc
rLeftDownFunc
rTopUpPar
1
Parameters for rTopUpFunc
{0.99,0.0219,6.07,2.0,0.003}
rTopDownPar
1
Parameters for rTopDownFunc
{0.99,0.0219,6.07,2.0,0.003}
rBotUpPar
rTopUpPar
rBotDownPar
rTopDownPar
rLeftUpPar
rTopUpPar
rLeftDownPar
rTopDownPar
rRightUpPar
rLeftUpPar
xwidth
m
Width at the guide entry
yheight
m
Height at the guide entry
length
m
length of guide along center
radius
G
9.8
nslit
1
Number of slits
1
d
m
Width of spacers (subdividing absorbing walls)
0.0
debug
1
if debug > 0 print out some internal parameters
0
endFlat
1
If endflat>0 then entrance and exit planes are parallel.
0
drawOption
1
1: fine(all slits/90 points per arc), 2: normal (max 20/40), 3: rough (max 5/10)