[mcstas-users] elliptic mirror problem
Екатерина Рувинская
ruvinskaia.e.e at mail.ru
Sun Sep 16 21:56:25 CEST 2018
Dear all,
I have a problem. I need to neutron beam pass through elliptical mirrors system. I tried approach through component "Guide_tapering" and component "Mirror_Elliptic". But in both cases neutron beam does not move after the mirror. Could you say what the source of the problem and how I can fix this. Code with "Guide_tapering" for example are attached.
Thanking in advance.
Yours faithfully, Ekaterina .
DEFINE INSTRUMENT NSE_res(double slit_w = 0.1)
DECLARE
%{
double slit_h;
int iter;
double arm_lenght = 5;
%}
INITIALIZE
%{
%}
TRACE
COMPONENT Origin = Progress_bar()
AT (0,0,0) ABSOLUTE
COMPONENT source = Source_gen(
yheight=0.00001,xwidth=slit_w, lambda0=9, dlambda=0.000000000000001,I1=1e13,
verbose=1,focus_xw=slit_w,focus_yh=0.0001, dist = arm_lenght/4)
AT (0, 0, 0) RELATIVE Origin
EXTEND
%{
t = rand0max(1e-20); // set time from 0 to 1 ms for TOF instruments.
%}
COMPONENT mon_TOF_source = Monitor_nD(
xwidth = 0.4, yheight = 0.4, restore_neutron = 1,
options = "time, limits=[0.000000001 0.3], bins=180, lambda, limits=[8.9 9.1], bins=180")
AT (0, 0, 0.00001) RELATIVE PREVIOUS
COMPONENT monitor_lambda_source = Monitor_nD(
xwidth = 0.4, yheight = 0.4, restore_neutron = 1,
options = "lambda, limits = [8.99, 9.01], bins = 180")
AT (0, 0, 0.00001) RELATIVE PREVIOUS
COMPONENT first_arm = Arm()
AT (0, 0, 0.000001) RELATIVE PREVIOUS
COMPONENT slit_first = Slit(xwidth = slit_w, yheight = 0.00001)
AT (0, 0, 1E-4) RELATIVE first_arm
COMPONENT elliptical_1 = Guide_tapering(
option = "elliptical", w1 = 1, h1 = 0.5, l = arm_lenght,
linw = 0.5, loutw = 0.5, linh = 0.5, louth = 0.5,
segno = 100, R0 = 0.995,
Qcx = 0.0217, Qcy = 0.0217, alphax = 6.07,
alphay = 6.07, W = 0.003, mx = 3, my = 3)
AT (-0.5+slit_w/2, 0,1E-3) RELATIVE first_arm
EXTEND
%{
if(!SCATTERED) ABSORB;
%}
COMPONENT second_arm = Arm()
AT (0, 0, arm_lenght) RELATIVE first_arm
COMPONENT elliptical_2 = Guide_tapering(
option = "elliptical", w1 = 1, h1 = 0.5, l = arm_lenght,
linw = 0.5, loutw = 0.5, linh = 0.5, louth = 0.5,
segno = 10, R0 = 0.995,
Qcx = 0.0217, Qcy = 0.0217, alphax = 6.07,
alphay = 6.07, W = 0.003, mx = 3, my = 3)
AT (0.5-slit_w/2, 0,1E-3) RELATIVE second_arm
EXTEND
%{
if(!SCATTERED) ABSORB;
%}
COMPONENT slit_f = Slit(xwidth = slit_w, yheight = 0.00001)
AT (0, 0, arm_lenght) RELATIVE second_arm
COMPONENT mon_TOF_end = Monitor_nD(
xwidth = 0.4, yheight = 0.4, restore_neutron = 1,
options = "time bins=180, lambda, limits=[29 31], bins=180")
AT (0, 0, 0.001) RELATIVE PREVIOUS
COMPONENT monitor_lambda_end = Monitor_nD(
xwidth = 0.4, yheight = 0.4, restore_neutron = 1,
options = "lambda, limits = [8.99, 9.01], bins = 180")
AT (0, 0, 0.001) RELATIVE PREVIOUS
COMPONENT monitor_time_end_9 = Monitor_nD(
xwidth = 0.4, yheight = 0.4, restore_neutron = 1,
options = "time, limits = [0.022784, 0.022792] bins = 200")
AT (0, 0, 0.001) RELATIVE PREVIOUS
COMPONENT monitor_time_end_30 = Monitor_nD(
xwidth = 0.4, yheight = 0.4, restore_neutron = 1,
options = "time, limits = [0.0455305, 0.0455307] bins = 200")
AT (0, 0, 0.001) RELATIVE PREVIOUS
FINALLY
%{
%}
END
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman2.mcstas.org/pipermail/mcstas-users/attachments/20180916/3989071d/attachment.html>
More information about the mcstas-users
mailing list