det_pix = 512 det_pitch = 50 * 1E-3 det_dim = det_pitch * det_pix / 2 # parabolic mirror, from specifications p = 0.35 # mm <- parabolic parameter, aka radius at vertex S = 200 # mm <- distance between focal point and mirror center, focal distance mirr_len = 150 mirr_width = 7 braggML = radians(1.694) # central 'bragg' angle of mirror #1 slope_error = 2 # in microradians # FF = 400 # mm <- second mirror to detector FF = 400 * 1.5 # mm <- second mirror to detector mSi = Material('Si', rho=2.33) mNi = Material('Ni', rho=8.9) mRu = Material('Ru', rho=11.0) mC = Material('C', rho=2.26) mL = LMultilayer(tLayer=mC, tThickness=30, bLayer=mRu, bThickness=30, nPairs=150, substrate=mSi, p=p, E0=E0) # xtals #crystalSi = CrystalSi(geom="Bragg", hkl=(4, 0, 0))
'parabolic_mirror', 'parabolic_mirror', 'crystal', 'crystal' ] # oes category # oes = ['crystal', 'crystal', 'flat_mirror', 'flat_mirror', # 'flat_mirror', 'flat_mirror', 'crystal', 'crystal'] # oes category # crystals miscut = np.radians(21) Si_kwargs = { 'hkl': [1, 1, 1], 'tK': 300 # [K] } Si_crystal = CrystalSi(**Si_kwargs) Si_tth = 2 * Si_crystal.get_Bragg_angle(E0) # mirrors m_mat = Material(elements='Au', rho=19.32, kind='mirror') m_pitch = np.radians(0.2) f = 300 # focal distance # distances ds0 = 100 d01 = 30 # distance between crystal 0 and 1 [mm] d1m0 = 20 # distance between crystal 1 and mirror 0 [mm] dm0m1 = 2 * f # distance between mirror 0 and 1 [mm] dm1m2 = 30 # Prepare kwargs for all OE elements in one loop d = [ds0, d01, d1m0, dm0m1, dm1m2, dm0m1, d1m0, d01] # distance to previous element (absolute) position_roll = [0, np.pi, 0, np.pi, np.pi, 0, np.pi, 0] # element facing up or down
#Andor iKon L det_pix = 512 det_pitch = 50 * 1E-3 det_dim = det_pitch * det_pix / 2 # parabolic mirror, from specifications p = 0.35 # mm <- parabolic parameter, aka radius at vertex S = 200 # mm <- distance between focal point and mirror center, focal distance mirr_len = 150 mirr_width = 7 braggML = radians(1.694) # central 'bragg' angle of mirror #1 slope_error = 2 # in microradians FF = 400 # mm <- second mirror to detector mSi = Material('Si', rho=2.33) mNi = Material('Ni', rho=8.9) mC = Material('C', rho=2.26) mL = LMultilayer(tLayer=mC, tThickness=30, bLayer=mNi, bThickness=30, nPairs=100, substrate=mSi, p=p, E0=E0) # xtals #crystalSi = CrystalSi(geom="Bragg", hkl=(4, 0, 0)) crystalGe = materials.Ge400_300K