Bender from Phillip Bernhard
kim.lefmann at risoe.dk
Fri Mar 23 12:35:44 CET 2001
Date: Fri, 23 Mar 2001 11:33:06 +0100 (MET)
From: Philipp Bernhardt <bernhard at amos.krist.uni-erlangen.de>
Subject: Re: Bender.comp ...
In-reply-to: <3AB870E5.116C476E at dxray.mpi-stuttgart.mpg.de>
To: neutron-mc at risoe.dk
<Pine.HPP.3.96.1010323100107.6544A-100000 at amos.krist.uni-erlangen.de>
Content-type: TEXT/PLAIN; charset=US-ASCII
I just want to answer to the question of Ulrich about the new versions of
the Bender (22 Feb 1999). I am sorry that there was still the old version
(7 Feb 1999) in the mcstas archive.
The small bug is not easy to see. The problem is that in the old version
one variable was not initiated by 0.0 as it should be.
If your compiler does this automatically for you, everything is fine. If
will see differences, whenever neutrons are absorbed on the top and
the bottom side caused by too big divergence (argument of the
tanh-function bigger than 10 like the standard guide component).
Then all following neutrons, which Q-value is smaller than Qcs will also
be absorbed in the old version, which is the bug.
I have added an example file, where you should see diverences, when your
compiler does not automatically initiate double variables.
DEFINE INSTRUMENT BEND()
COMPONENT a1 = Arm()
AT (0,0,0) ABSOLUTE
COMPONENT source = Source_div(
AT (0,0,0) RELATIVE a1
w=0.06, h=0.12, r=500.0, d=0.0, Win=0.03, k=1,
R0a=1.0, Qca=0.02, alphaa=1.0, ma=1, Wa=0.000001,
R0i=1.0, Qci=0.02, alphai=1.0, mi=1, Wi=0.000001,
R0s=1.0, Qcs=0.02, alphas=1.0, ms=1, Ws=0.000001)
AT(0, 0, 0) RELATIVE a1
AT(0,0,15.01) RELATIVE a1
I hope I could help
More information about the mcstas-users