/***************************************************************************** * McStas instrument definition URL=http://www.mcstas.org * * Instrument: Test_Lens * * %Identification * Written by: E. Farhi/C. Monzat * Date: Dec 2009. * Origin: ILL * %INSTRUMENT_SITE: Tests_optics * * Demonstrate focusing effect of refractive lenses * * %Example: lambda=10 position_PSD=8.2 Detector: Last_PSD_I=2.6829e-19 * * %Description * * Very simple setup with 30 stacked lenses which focus a cold neutron, * non diverging beam (ideal case). A set of PSD monitors is positioned * around the focusing point to show the beam spot. * * %Parameters * lambda: [Angs] Source wavelength * position_PSD: [m] Distance from last lens to first monitor * * %Link * * %End ****************************************************************************/ DEFINE INSTRUMENT Test_Lens(lambda=10,position_PSD=8.2) TRACE COMPONENT base=Progress_bar() at (0,0,0) ABSOLUTE COMPONENT source1 = Source_div( xwidth=0.026, yheight=0.026, focus_aw= 0.00001, focus_ah= 0.00001, lambda0=lambda, dlambda=0.00001,gauss=0) AT (0,0,.001) relative PREVIOUS COMPONENT L11=Lens(r1=0.025,r2=0.025,thickness=0.0005, density=3.148,weight=62.3018,sigma_coh=11.74,sigma_inc=0,sigma_abs=0, radius=0.025,p_interact=0.01,focus_aw=10,focus_ah=10) AT (0,0,.20) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT COPY(L11) = COPY (L11) AT (0,0,0.0071987) RELATIVE PREVIOUS COMPONENT PSD_mon = Monitor_nD( xwidth=0.01, yheight = 0.01, options="x y, per cm2",bins=100,restore_neutron=1) AT (0, 0, position_PSD) RELATIVE PREVIOUS COMPONENT COPY(PSD_mon) = COPY(PSD_mon) AT (0, 0, 0.1) RELATIVE PREVIOUS COMPONENT COPY(PSD_mon) = COPY(PSD_mon) AT (0, 0, 0.1) RELATIVE PREVIOUS COMPONENT COPY(PSD_mon) = COPY(PSD_mon) AT (0, 0, 0.1) RELATIVE PREVIOUS COMPONENT COPY(PSD_mon) = COPY(PSD_mon) AT (0, 0, 0.1) RELATIVE PREVIOUS COMPONENT COPY(PSD_mon) = COPY(PSD_mon) AT (0, 0, 0.1) RELATIVE PREVIOUS COMPONENT COPY(PSD_mon) = COPY(PSD_mon) AT (0, 0, 0.1) RELATIVE PREVIOUS COMPONENT COPY(PSD_mon) = COPY(PSD_mon) AT (0, 0, 0.1) RELATIVE PREVIOUS COMPONENT COPY(PSD_mon) = COPY(PSD_mon) AT (0, 0, 0.1) RELATIVE PREVIOUS COMPONENT COPY(PSD_mon) = COPY(PSD_mon) AT (0, 0, 0.1) RELATIVE PREVIOUS COMPONENT COPY(PSD_mon) = COPY(PSD_mon) AT (0, 0, 0.1) RELATIVE PREVIOUS COMPONENT COPY(PSD_mon) = COPY(PSD_mon) AT (0, 0, 0.1) RELATIVE PREVIOUS COMPONENT COPY(PSD_mon) = COPY(PSD_mon) AT (0, 0, 0.1) RELATIVE PREVIOUS COMPONENT COPY(PSD_mon) = COPY(PSD_mon) AT (0, 0, 0.1) RELATIVE PREVIOUS COMPONENT Last_PSD = COPY(PSD_mon) AT (0, 0, 0.1) RELATIVE PREVIOUS END