/******************************************************************************* * McStas instrument definition URL=http://mcstas.risoe.dk * * Instrument: ILL_H142 * * %Identification * Written by: FARHI Emmanuel (farhi@ill.fr) * Date: April 7, 2004 * Origin:ILL * Release: McStas 1.12c * Version: $Revision: 1.7 $ * %INSTRUMENT_SITE: ILL * * The H142 S-curved cold guide at the ILL feeding IN12 TAS spectrometer * * %Description * The H142 beam is the only S-curved guide at the ILL. It is used here to feed * the IN12 TAS spectrometer (classical configuration). * * Example: * mcrun -n 1e7 ILL_H142.instr m=1 Ki=2.662 * * %Parameters * m: (1) m-value of guide coating (H14/H142) * Ki: (AA) central wavevector for incoming neutrons * Q: (AA-1) wavevector transfer at the sample * E: (meV) energy transfer at the sample * * %Link * The IN12 TAS at the ILL * * %End *******************************************************************************/ DEFINE INSTRUMENT ILL_H142_IN12(m=1, Ki=2.662, Q=1.0, E=0.0) /* The DECLARE section allows us to declare variables or small */ /* functions in C syntax. These may be used in the whole instrument. */ DECLARE %{ /* VCS (H1) source parameters */ double sT1=216.8,sI1=1.24e+13; double sT2=33.9, sI2=1.02e+13; double sT3=16.7 ,sI3=3.0423e+12; double sLambda=2.36; double dl_percent=2; /* range for incoming neutron spectra reaching monochromator */ /* guide coating parameters */ double gR0 = 1; double gQc = 0.021; double gAlpha = 4.07; double gW = 1.0/300.0; double gMvalue = 1; /* gaps and Al windows parameters */ double Al_Thickness = 0.002; double gGap = 0.001; /* guide curvatures */ double gRh = 2700; /* 'upwards' */ /* guide section parameters (total length/number of elements) */ double gH =0.12; double L_H142_2 =6.0 /6, Rh_H142_2 =0; double L_H142_3 =9.473/10, Rh_H142_3 =0; /* end: d ~ 15.5 moderator at -5.9 */ double L_H142_4 =6.973/7, Rh_H142_4 =0; /* end: d ~ 22.5 ... */ double L_H142_5 =4.75 /5, Rh_H142_5 =0; /* VTE is at the end of this section */ double L_H142_6 =12.5/10, Rh_H142_6 =0; /* end of H142 MAN spec sheet after 2 elements */ double L_H142_7 =12.5/10, Rh_H142_7 =0; double L_H142_8 =12.5/10, Rh_H142_8 =0; double L_H142_9 =12.5/10, Rh_H142_9 =0; double L_H142_10=12.5/10, Rh_H142_10=0; double L_H142_11=12.5/10, Rh_H142_11=0; double L_H142_12=7.5/6, Rh_H142_12=0; /* straight */ double L_H142_13=2.5/2, Rh_H142_13=0; /* straight */ /* capture flux positions from moderator: 21.4 28.4 61.2 */ /* IN12 variables */ double DM = 3.3539; /* Monochromator d-spacing in Angs */ double DA = 3.3539; /* Analyzer d-spacing in Angs */ double A1,A2; /* mono angles */ double A3,A4; /* sample angles */ double A5,A6; /* ana angles */ double RMH, RMV, RAH, RAV; double L1=100000, L2=1.726, L3=1.300, L4=0.710; %} /* The INITIALIZE section is executed when the simulation starts */ /* (C code). You may use them as component parameter values. */ INITIALIZE %{ /* transfert instrument parameters for components */ if (m) gMvalue = m; if (Ki) sLambda = 2*PI/Ki; /* Element rotations = Element length / Curvature Radius * RAD2DEG */ if (gRh) { Rh_H142_2 = L_H142_2 /gRh*RAD2DEG; Rh_H142_3 = L_H142_3 /gRh*RAD2DEG; Rh_H142_4 = L_H142_4 /gRh*RAD2DEG; Rh_H142_5 = L_H142_5 /gRh*RAD2DEG; Rh_H142_6 =-L_H142_6 /gRh*RAD2DEG; /* S curved */ Rh_H142_7 =-L_H142_7 /gRh*RAD2DEG; Rh_H142_8 =-L_H142_8 /gRh*RAD2DEG; Rh_H142_9 =-L_H142_9 /gRh*RAD2DEG; Rh_H142_10 =-L_H142_10/gRh*RAD2DEG; Rh_H142_11 =-L_H142_11/gRh*RAD2DEG; } /* ------------------ IN12 TAS variables ------------------ */ /* SM : scattering at mono to the right (-1)/left(+1) */ /* SS : scattering at sample to the right (-1)/left(+1) */ /* SA : scattering at analyser to the right (-1)/left(+1) */ double SM = 1; double SS = -1; double SA = 1; double ORDER=1; if (DM <= 0.1) { printf("TAS: " NAME_CURRENT_COMP " Mono DM = %f Angs, too small\n", DM); exit(-1); } double mono_q = 2*PI*ORDER/DM; /* Q mono in Angs-1 */ double Vi = K2V*fabs(Ki); double Ei = VS2E*Vi*Vi; /* Monocrhomator characteristics (A1,A2 from Ki,DM) */ if ((Ki == 0) || (fabs(mono_q/2/Ki) > 1)) { printf("TAS: " NAME_CURRENT_COMP " Can not reach this incident wavevector\n"); printf("with such a monochromator (A2)\n"); printf("Mono DM = %f Angs, requested Ki = %f Angs-1\n", DM, Ki); exit(-1); } A2 = asin(mono_q/2/Ki)*RAD2DEG*2; A2 *= SM; /*A1 : mono theta (crystal) */ A1 = A2/2; /*A2 : mono 2 theta (arm to sample) */ double Ef = Ei - E; if (Ef < 0) { printf("TAS: " NAME_CURRENT_COMP " Out-going neutrons have negative energy !!\n"); printf("Incident Ei = %f meV, Exchange E = %f meV\n",Ei,E); exit(-1); } /* Analyzer characteristics (A5,A6 from Kf, DA) */ double Vf = SE2V*sqrt(Ef); /*final energy from energy transfert */ double Kf = V2K*Vf; if (DA <= 0.1) { printf("TAS: " NAME_CURRENT_COMP " Ana DA = %f Angs, too small\n", DM); exit(-1); } double ana_q = 2*PI*ORDER/DA; /* Q ana in Angs-1 */ if ((Kf == 0) || (fabs(mono_q/2/Kf) > 1)) { printf("TAS: " NAME_CURRENT_COMP " Can not reach this out-going wavevector\n"); printf("with such an analyzer (A6)\n"); printf("Mono DA = %f Angs, requested Kf = %f Angs-1\n",DA, Kf); exit(-1); } A6 = asin(ana_q/2/Kf)*RAD2DEG*2; A6 *= SA; /* A5 : analyser theta (crystal) */ A5 = A6/2; /* A6 : analyser 2 theta (arm to detector) */ /* Sample characteristics */ double arg = (Ki*Ki + Kf*Kf - Q*Q)/2/fabs(Ki*Kf); if (fabs(arg) > 1) { printf("TAS: Can not close wavevector triangle (A4)\n"); printf("Incident Ki = %f Angs-1, Exchange Q=%f Angs-1, ",Ki,Q); printf("Final Kf = %f Angs-1\n",Kf); exit(-1); } A4 = acos(arg)*RAD2DEG; A4 *= SS; /*A4 : sample 2 theta (arm to analyser) */ /* computing of A3 requires sample reciprocal axes characteristics. Simplify... */ A3 = A4/2; /* A3 : sample theta */ double L; L=1/(1/L1+1/L2); RMV=2*L*sin(A1*DEG2RAD); RMH=0; L=1/(1/L3+1/L4); RAV=0; RAH=2*L/sin(A5*DEG2RAD); printf("%s: Detailed TAS configuration on %s.\n",NAME_CURRENT_COMP, getenv("HOSTNAME") ? getenv("HOSTNAME") : "localhost"); printf("* Incoming beam: EI=%.4g [meV] KI=%.4g [Angs-1] Vi=%.4g [m/s] Lambda = %.4g [Angs]\n", Ei, Ki, Vi, sLambda); printf("* Outgoing beam: EF=%.4g [meV] KF=%.4g [Angs-1] Vf=%.4g [m/s]\n", Ef, Kf, Vf); printf("* Transfert: EN=%g [meV] QM=%g [Angs-1]\n", E, Q); printf("Angles: A1=%.4g A2=%.4g A3=%.4g A4=%.4g A5=%.4g A6=%.4g [deg]\n", A1, A2, A3, A4, A5, A6); printf("Monochromator: DM=%.4g [Angs] RMH=%.4g [m] RMV=%.4g [m] %s\n", DM, RMH, RMV, (!RMH && !RMV ? "flat" : "curved")); printf("Analyzer: DA=%.4g [Angs] RAH=%.4g [m] RAV=%.4g [m] %s\n", DA, RAH, RAV, (!RAH && !RAV ? "flat" : "curved")); %} /* Here comes the TRACE section, where the actual */ /* instrument is defined as a sequence of components. */ TRACE /* The Arm() class component defines reference points and orientations */ /* in 3D space. Every component instance must have a unique name. Here, */ /* Origin is used. This Arm() component is set to define the origin of */ /* our global coordinate system (AT (0,0,0) ABSOLUTE). It may be used */ /* for further RELATIVE reference, and even replaced by a Progress_bar */ /* component. Other useful keywords are : ROTATED EXTEND GROUP PREVIOUS */ /* Also think about adding a neutron source ! */ COMPONENT Origin = Progress_bar() AT (0,0,0) ABSOLUTE COMPONENT VCS = Source_gen( h = 0.22, w = 0.14, dist = 2.525, xw = 0.038, yh = 0.2, Lmin = sLambda*(1-dl_percent/100/2), Lmax = sLambda*(1+dl_percent/100/2), T1 = sT1, I1 = sI1, T2 = sT2, I2 = sI2, T3 = sT3, I3 = sI3, verbose = 1) AT (0, 0, 0) RELATIVE Origin COMPONENT Al_window1 = Al_window(win_thick=Al_Thickness) AT (0,0,0.21) RELATIVE VCS COMPONENT Al_window2 = Al_window(win_thick=Al_Thickness) AT (0,0,0.61) RELATIVE VCS COMPONENT Al_window3 = Al_window(win_thick=Al_Thickness) AT (0,0,0.78) RELATIVE VCS COMPONENT Al_window4 = Al_window(win_thick=Al_Thickness) AT (0,0,0.92) RELATIVE VCS COMPONENT Al_window5 = Al_window(win_thick=Al_Thickness) AT (0,0,2.43) RELATIVE VCS /* H142-1: L=3.17 m in 1 element. no curvature */ COMPONENT PinkCarter = Guide_gravity( w1=0.038, h1=0.2, w2=0.032, h2=0.2, l=3.170, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,2.525) RELATIVE VCS COMPONENT FirstObturator = Guide_gravity( w1=0.031, h1=0.2, w2=0.031, h2=0.2, l=0.228, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,3.17+0.02) RELATIVE PinkCarter /* ******************** swiming pool guide ******************** */ /* H142-2: L=5.5 m in 6 elements R horiz=2700 m */ COMPONENT H142_2 = Arm() AT (0,0,3.59) RELATIVE PinkCarter COMPONENT H142_2_In = Al_window(win_thick=Al_Thickness) AT (0,0,0) RELATIVE PREVIOUS COMPONENT H142_2_1 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_2, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,Al_Thickness+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_2,0) RELATIVE PREVIOUS COMPONENT H142_2_2 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_2, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_2+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_2,0) RELATIVE PREVIOUS COMPONENT H142_2_3 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_2, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_2+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_2,0) RELATIVE PREVIOUS COMPONENT H142_2_4 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_2, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_2+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_2,0) RELATIVE PREVIOUS COMPONENT H142_2_5 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_2, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_2+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_2,0) RELATIVE PREVIOUS COMPONENT H142_2_6 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_2, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_2+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_2,0) RELATIVE PREVIOUS COMPONENT H142_2_Out = Al_window(win_thick=Al_Thickness) AT (0,0,L_H142_2+gGap) RELATIVE PREVIOUS /* gap 0.198 m (VS) */ /* H142-3: L=9.973 m in 10 elements Rh=2700 m. */ COMPONENT H142_3 = Arm() AT (0,0,0.198) RELATIVE H142_2_Out COMPONENT H142_3_In = Al_window(win_thick=Al_Thickness) AT (0,0,0) RELATIVE PREVIOUS COMPONENT H142_3_1 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_3, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,Al_Thickness+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_3,0) RELATIVE PREVIOUS COMPONENT H142_3_2 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_3, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_3+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_3,0) RELATIVE PREVIOUS COMPONENT H142_3_3 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_3, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_3+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_3,0) RELATIVE PREVIOUS COMPONENT H142_3_4 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_3, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_3+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_3,0) RELATIVE PREVIOUS COMPONENT H142_3_5 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_3, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_3+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_3,0) RELATIVE PREVIOUS COMPONENT H142_3_6 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_3, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_3+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_3,0) RELATIVE PREVIOUS COMPONENT H142_3_7 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_3, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_3+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_3,0) RELATIVE PREVIOUS COMPONENT H142_3_8 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_3, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_3+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_3,0) RELATIVE PREVIOUS COMPONENT H142_3_9 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_3, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_3+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_3,0) RELATIVE PREVIOUS COMPONENT H142_3_10 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_3, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_3+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_3,0) RELATIVE PREVIOUS COMPONENT H142_3_Out = Al_window(win_thick=Al_Thickness) AT (0,0,L_H142_3+gGap) RELATIVE PREVIOUS /* gap 0.03 m */ /* H142-4: L=6.973 m in 7 elements Rh=2700 m. Here d_c ~ 21.4 */ COMPONENT H142_4 = Arm() AT (0,0,0.03) RELATIVE H142_3_Out COMPONENT H142_4_In = Al_window(win_thick=Al_Thickness) AT (0,0,0) RELATIVE PREVIOUS COMPONENT H142_4_1 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_4, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,Al_Thickness+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_4,0) RELATIVE PREVIOUS COMPONENT H142_4_2 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_4, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_4+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_4,0) RELATIVE PREVIOUS COMPONENT H142_4_3 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_4, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_4+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_4,0) RELATIVE PREVIOUS COMPONENT H142_4_4 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_4, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_4+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_4,0) RELATIVE PREVIOUS COMPONENT H142_4_5 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_4, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_4+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_4,0) RELATIVE PREVIOUS COMPONENT H142_4_6 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_4, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_4+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_4,0) RELATIVE PREVIOUS COMPONENT H142_4_7 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_4, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_4+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_4,0) RELATIVE PREVIOUS COMPONENT H142_4_Out = Al_window(win_thick=Al_Thickness) AT (0,0,L_H142_4+gGap) RELATIVE PREVIOUS /* gap 0.03 m */ /* H142-5: L=4.75 m in 5 elements Rh=2700 m. Here d_c ~ 28.4 */ COMPONENT H142_5 = Arm() AT (0,0,0.03) RELATIVE H142_4_Out COMPONENT H142_5_In = Al_window(win_thick=Al_Thickness) AT (0,0,0) RELATIVE PREVIOUS COMPONENT H142_5_1 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_5, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,Al_Thickness+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_5,0) RELATIVE PREVIOUS COMPONENT H142_5_2 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_5, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_5+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_5,0) RELATIVE PREVIOUS COMPONENT H142_5_3 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_5, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_5+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_5,0) RELATIVE PREVIOUS COMPONENT H142_5_4 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_5, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_5+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_5,0) RELATIVE PREVIOUS COMPONENT H142_5_5 = Guide_gravity( w1=0.03, h1=0.2, w2=0.03, h2=0.2, l=L_H142_5, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_5+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_5,0) RELATIVE PREVIOUS COMPONENT H142_5_Out = Al_window(win_thick=Al_Thickness) AT (0,0,L_H142_5+gGap) RELATIVE PREVIOUS /* gap .330 m (VTE) */ /* ******************** after the VTE ******************** */ /* H142-6: L=12.5 m in 10 elements Rh=-2700 m. splitting. */ COMPONENT H142_6 = Arm() AT (0,-(0.2-gH)/2,0.330) RELATIVE H142_5_Out COMPONENT H142_6_In = Al_window(win_thick=Al_Thickness) AT (0,0,0) RELATIVE PREVIOUS COMPONENT H142_6_1 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_6, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,Al_Thickness+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_6,0) RELATIVE PREVIOUS COMPONENT H142_6_2 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_6, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_6+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_6,0) RELATIVE PREVIOUS COMPONENT H142_6_3 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_6, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_6+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_6,0) RELATIVE PREVIOUS COMPONENT H142_6_4 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_6, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_6+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_6,0) RELATIVE PREVIOUS COMPONENT H142_6_5 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_6, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_6+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_6,0) RELATIVE PREVIOUS COMPONENT H142_6_6 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_6, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_6+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_6,0) RELATIVE PREVIOUS COMPONENT H142_6_7 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_6, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_6+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_6,0) RELATIVE PREVIOUS COMPONENT H142_6_8 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_6, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_6+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_6,0) RELATIVE PREVIOUS COMPONENT H142_6_9 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_6, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_6+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_6,0) RELATIVE PREVIOUS COMPONENT H142_6_10 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_6, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_6+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_6,0) RELATIVE PREVIOUS COMPONENT H142_6_Out = Al_window(win_thick=Al_Thickness) AT (0,0,L_H142_6+gGap) RELATIVE PREVIOUS /* gap 0.03 m */ /* H142-7: L=12.5 m in 10 elements Rh=-2700 m */ COMPONENT H142_7 = Arm() AT (0,0,0.03+Al_Thickness) RELATIVE PREVIOUS COMPONENT H142_7_In = Al_window(win_thick=Al_Thickness) AT (0,0,0) RELATIVE PREVIOUS COMPONENT H142_7_1 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_7, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,Al_Thickness+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_7,0) RELATIVE PREVIOUS COMPONENT H142_7_2 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_7, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_7+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_7,0) RELATIVE PREVIOUS COMPONENT H142_7_3 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_7, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_7+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_7,0) RELATIVE PREVIOUS COMPONENT H142_7_4 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_7, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_7+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_7,0) RELATIVE PREVIOUS COMPONENT H142_7_5 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_7, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_7+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_7,0) RELATIVE PREVIOUS COMPONENT H142_7_6 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_7, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_7+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_7,0) RELATIVE PREVIOUS COMPONENT H142_7_7 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_7, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_7+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_7,0) RELATIVE PREVIOUS COMPONENT H142_7_8 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_7, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_7+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_7,0) RELATIVE PREVIOUS COMPONENT H142_7_9 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_7, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_7+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_7,0) RELATIVE PREVIOUS COMPONENT H142_7_10 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_7, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_7+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_7,0) RELATIVE PREVIOUS COMPONENT H142_7_Out = Al_window(win_thick=Al_Thickness) AT (0,0,L_H142_7+gGap) RELATIVE PREVIOUS /* gap 0.03 m */ /* H142-8: L=12.5 m in 10 elements Rh=-2700 m. */ COMPONENT H142_8 = Arm() AT (0,0,0.03+Al_Thickness) RELATIVE PREVIOUS COMPONENT H142_8_In = Al_window(win_thick=Al_Thickness) AT (0,0,0) RELATIVE PREVIOUS COMPONENT H142_8_1 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_8, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,Al_Thickness+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_8,0) RELATIVE PREVIOUS COMPONENT H142_8_2 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_8, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_8+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_8,0) RELATIVE PREVIOUS COMPONENT H142_8_3 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_8, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_8+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_8,0) RELATIVE PREVIOUS COMPONENT H142_8_4 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_8, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_8+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_8,0) RELATIVE PREVIOUS COMPONENT H142_8_5 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_8, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_8+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_8,0) RELATIVE PREVIOUS COMPONENT H142_8_6 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_8, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_8+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_8,0) RELATIVE PREVIOUS COMPONENT H142_8_7 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_8, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_8+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_8,0) RELATIVE PREVIOUS COMPONENT H142_8_8 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_8, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_8+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_8,0) RELATIVE PREVIOUS COMPONENT H142_8_9 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_8, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_8+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_8,0) RELATIVE PREVIOUS COMPONENT H142_8_10 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_8, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_8+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_8,0) RELATIVE PREVIOUS COMPONENT H142_8_Out = Al_window(win_thick=Al_Thickness) AT (0,0,L_H142_8+gGap) RELATIVE PREVIOUS /* gap 0.03 m */ /* H142-9: L=12.5 m in 10 elements Rh=-2700 m. */ COMPONENT H142_9 = Arm() AT (0,0,0.03+Al_Thickness) RELATIVE PREVIOUS COMPONENT H142_9_In = Al_window(win_thick=Al_Thickness) AT (0,0,0) RELATIVE PREVIOUS COMPONENT H142_9_1 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_9, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,Al_Thickness+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_9,0) RELATIVE PREVIOUS COMPONENT H142_9_2 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_9, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_9+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_9,0) RELATIVE PREVIOUS COMPONENT H142_9_3 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_9, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_9+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_9,0) RELATIVE PREVIOUS COMPONENT H142_9_4 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_9, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_9+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_9,0) RELATIVE PREVIOUS COMPONENT H142_9_5 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_9, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_9+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_9,0) RELATIVE PREVIOUS COMPONENT H142_9_6 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_9, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_9+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_9,0) RELATIVE PREVIOUS COMPONENT H142_9_7 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_9, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_9+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_9,0) RELATIVE PREVIOUS COMPONENT H142_9_8 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_9, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_9+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_9,0) RELATIVE PREVIOUS COMPONENT H142_9_9 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_9, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_9+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_9,0) RELATIVE PREVIOUS COMPONENT H142_9_10 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_9, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_9+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_9,0) RELATIVE PREVIOUS COMPONENT H142_9_Out = Al_window(win_thick=Al_Thickness) AT (0,0,L_H142_9+gGap) RELATIVE PREVIOUS /* gap 0.03 m */ /* H142-10: L=12.5 m in 10 elements Rh=-2700 m. */ COMPONENT H142_10 = Arm() AT (0,0,0.03+Al_Thickness) RELATIVE PREVIOUS COMPONENT H142_10_In = Al_window(win_thick=Al_Thickness) AT (0,0,0) RELATIVE PREVIOUS COMPONENT H142_10_1 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_10, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,Al_Thickness+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_10,0) RELATIVE PREVIOUS COMPONENT H142_10_2 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_10, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_10+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_10,0) RELATIVE PREVIOUS COMPONENT H142_10_3 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_10, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_10+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_10,0) RELATIVE PREVIOUS COMPONENT H142_10_4 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_10, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_10+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_10,0) RELATIVE PREVIOUS COMPONENT H142_10_5 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_10, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_10+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_10,0) RELATIVE PREVIOUS COMPONENT H142_10_6 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_10, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_10+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_10,0) RELATIVE PREVIOUS COMPONENT H142_10_7 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_10, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_10+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_10,0) RELATIVE PREVIOUS COMPONENT H142_10_8 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_10, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_10+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_10,0) RELATIVE PREVIOUS COMPONENT H142_10_9 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_10, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_10+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_10,0) RELATIVE PREVIOUS COMPONENT H142_10_10 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_10, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_10+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_10,0) RELATIVE PREVIOUS COMPONENT H142_10_Out = Al_window(win_thick=Al_Thickness) AT (0,0,L_H142_10+gGap) RELATIVE PREVIOUS /* gap 0.03 m */ /* H142-11: L=12.5 m in 10 elements Rh=-2700 m. */ COMPONENT H142_11 = Arm() AT (0,0,0.03+Al_Thickness) RELATIVE PREVIOUS COMPONENT H142_11_In = Al_window(win_thick=Al_Thickness) AT (0,0,0) RELATIVE PREVIOUS COMPONENT H142_11_1 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_11, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,Al_Thickness+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_11,0) RELATIVE PREVIOUS COMPONENT H142_11_2 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_11, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_11+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_11,0) RELATIVE PREVIOUS COMPONENT H142_11_3 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_11, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_11+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_11,0) RELATIVE PREVIOUS COMPONENT H142_11_4 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_11, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_11+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_11,0) RELATIVE PREVIOUS COMPONENT H142_11_5 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_11, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_11+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_11,0) RELATIVE PREVIOUS COMPONENT H142_11_6 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_11, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_11+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_11,0) RELATIVE PREVIOUS COMPONENT H142_11_7 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_11, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_11+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_11,0) RELATIVE PREVIOUS COMPONENT H142_11_8 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_11, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_11+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_11,0) RELATIVE PREVIOUS COMPONENT H142_11_9 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_11, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_11+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_11,0) RELATIVE PREVIOUS COMPONENT H142_11_10 = Guide_gravity( w1=0.03, h1=gH, w2=0.03, h2=gH, l=L_H142_11, R0=gR0, Qc=gQc, alpha=gAlpha, m=gMvalue, W=gW) AT (0,0,L_H142_11+gGap) RELATIVE PREVIOUS ROTATED (0,Rh_H142_11,0) RELATIVE PREVIOUS COMPONENT H142_11_Out = Al_window(win_thick=Al_Thickness) AT (0,0,L_H142_11+gGap) RELATIVE PREVIOUS /* Here IN12 position. Gap .300 */ COMPONENT CurvedGuideEnd = Arm() AT (0,0,gGap) RELATIVE PREVIOUS /* Here IN12 position. Gap .300 */ /*-------------------------*/ /* End of Curved Guide */ /*-------------------------*/ /* this is the integrated flux (not a capture flux) */ COMPONENT IN12_Mono_In = Monitor_nD( xwidth=0.03, yheight=gH, options="x y, cm2, all bins=40") AT (0,0,.12) RELATIVE CurvedGuideEnd COMPONENT Mono_Cradle = Arm() AT (0, 0, .25) RELATIVE CurvedGuideEnd ROTATED (0, A1, 0) RELATIVE CurvedGuideEnd /* IN12 monochromator: h x w = 12.0 x 8.0 cm2 , Graphite, 6 horizontal blades */ /* Vertical Curvature */ SPLIT COMPONENT PG1Xtal = Monochromator_curved( width = 0.08, height = 0.12, gap = 0.001, mosaic = 36, r0 = 1, DM=DM, RV=RMV, NH=1, NV=6, reflect="HOPG.rfl") AT (0, 0, 0) RELATIVE Mono_Cradle /* on mono, pointing towards sample */ COMPONENT Mono_Out = Arm() AT (0,0,0) RELATIVE Mono_Cradle ROTATED (0, A2, 0) RELATIVE CurvedGuideEnd COMPONENT D4_SC2_1D = Monitor_nD( xmin = -0.0420/2, xmax = 0.0420/2, ymin = -0.1200/2, ymax = 0.1200/2, options="lambda, cm2, auto") AT (0, 0, 0.2223-0.00007) RELATIVE Mono_Out /* SC2 collimator. 40'=4 slots, 20'=8 slots */ COMPONENT SC2 = Guide_gravity( w1 = 0.0420, h1 = 0.1200, w2 = 0.0420, h2 = 0.1200, l = 0.340, d = 0.28/1000, k = 7, R0 = 0.0) AT (0, 0, 0.2223) RELATIVE Mono_Out /* we are here at 0.34+0.2223=0.562 from monok. L Monok-Sample=1.726. Left 1.1637 */ COMPONENT Sample_Cradle = Arm() AT (0, 0, L2) RELATIVE Mono_Out ROTATED (0, A3, 0) RELATIVE Mono_Out COMPONENT Sample_Out = Arm() /* this is the sample-ana axis */ AT (0,0,0.0001) RELATIVE Sample_Cradle ROTATED (0, A4, 0) RELATIVE Mono_Out SPLIT COMPONENT Sample = V_sample( radius_i = 0.0, radius_o = 0.0064, h = 0.0254, focus_r = 0.013, pack = 1, target_x = 0, target_y = 0, target_z = 0.234) AT (0,0,0) RELATIVE Sample_Out COMPONENT D7_SC3_1D = Monitor_nD( xmin = -0.0420/2, xmax = 0.0420/2, ymin = -0.1200/2, ymax = 0.1200/2, options="theta energy, all auto, banana, parallel") AT (0, 0, 0.2350-0.00007) RELATIVE Sample_Out /* SC3 collimator. 40' = 12 slots, 20'=24 slots */ COMPONENT SC3 = Guide_gravity( w1 = 0.0420, h1 = 0.1200, w2 = 0.0420, h2 = 0.1200, l = 0.3400, d = 0.28/1000, k = 7, R0 = 0.0) AT (0, 0, 0.2350) RELATIVE Sample_Out /* we are here at 0.34+0.235=0.575 from sample. L Sample-Ana=1300. Left 0.725 */ COMPONENT Ana_Cradle = Arm() AT (0, 0, L3) RELATIVE Sample_Out ROTATED (0, A5, 0) RELATIVE Sample_Out /* IN12 analyser: h x w = 11.8 x 12.1 cm2 , Graphite, 11 vertical blades */ /* To Add: PG refelctivity from file or direct, Horizontal Curvature */ SPLIT COMPONENT PG2Xtal = Monochromator_curved( width = 0.121, yheight = 0.118, gap = 0.001, mosaic = 36, r0 = 1, DM=DA, RV=RAV, RH=RAH, NH=11, NV=1, reflect="HOPG.rfl") AT (0, 0, 0) RELATIVE Ana_Cradle COMPONENT Ana_Out = Arm() /* this is the sample-ana axis */ AT (0,0,0) RELATIVE Ana_Cradle ROTATED (0, A6, 0) RELATIVE Sample_Out /* SC4 collimator. 80' = 6 slots */ COMPONENT SC4 = Guide_gravity( w1 = 0.0420, h1 = 0.1200, w2 = 0.0420, h2 = 0.1200, l = 0.2010, d = 0.28/1000, k = 12, R0 = 0.0) AT (0, 0, 0.3366) RELATIVE Ana_Out /* we are here at 0.3366+0.2010=0.53760. L Ana-Det = 710. Left 0.1724 /* vertical 3He Detector */ COMPONENT He3_1D = Monitor_nD( xmin = -0.05/2, xmax = 0.05/2, ymin = -0.12/2, ymax = 0.12/2, options="lambda kx, cm2, auto, parallel") AT (0, 0, L4) RELATIVE Ana_Out COMPONENT He3 = Monitor_nD( xmin = -0.05/2, xmax = 0.05/2, ymin = -0.12/2, ymax = 0.12/2, options="x y, 3He_pressure=3, cylinder, outgoing") AT (0, 0, L4) RELATIVE Ana_Out /* The END token marks the instrument definition end */ END