optSys = optsys.OpticalSystem() devAngle = 42.73 * np.pi / 180 prismAngle = 20.4 * np.pi / 180 prism1Insert = 0e-3 prism2Insert = 0e-3 prism3Insert = 0e-3 prism4Insert = 0e-3 prismOffset = 14e-3 prismMat = optSys.material_library.get_material('fs') prism = oe.PrismElement(x=np.array([0, 0, 50e-3]), n=1.5, apexAngle=65 * np.pi / 180, sideLength=50e-3, material=prismMat) prism.set_position(np.array([-prismOffset + prism1Insert, 0, 200e-3, 1])) prism.rotate_element(0, prismAngle) prism2 = oe.PrismElement(x=np.array( [prismOffset + 9e-3 - prism2Insert, 0, 1200e-3]), n=1.5, apexAngle=65 * np.pi / 180, sideLength=50e-3, material=prismMat) prism2.reverse_element() prism2.rotate_element(0, np.pi - prismAngle)
logger.removeHandler(logger.handlers[0]) f = logging.Formatter( "%(asctime)s - %(module)s. %(funcName)s - %(levelname)s - %(message)s") fh = logging.StreamHandler() fh.setFormatter(f) logger.addHandler(fh) logger.setLevel(logging.INFO) opt_sys = optsys.OpticalSystem() fs = opt_sys.material_library.get_material('fs') slab0 = oe.OpticalElement(n=1.5, thickness=10e-3, x=np.array([0, 0, 100e-3]), material=opt_sys.material_library.get_material('fs'), size=50e-3) slab0.set_rotation(0, 0 * np.pi / 180) slab1 = oe.OpticalElement(n=1.5, thickness=10e-3, x=np.array([0, 0, 100e-3]), material=opt_sys.material_library.get_material('fs'), size=50e-3) slab1.set_rotation(0, 0 * np.pi / 180) slab2 = oe.OpticalElement(n=1.5, thickness=10e-3, x=np.array([0, 0, 100e-3]), material=opt_sys.material_library.get_material('fs'), size=50e-3)
reload(oa) reload(om) reload(oe) reload(rs) reload(ry) reload(optsys) reload(optsurf) optSys = optsys.OpticalSystem() apex = 58 * np.pi / 180 prismMat = optSys.material_library.get_material('sapphire') prism = oe.PrismElement(x=np.array([0, 0, 50e-3]), n=1.5, apexAngle=apex, sideLength=50e-3, material=prismMat) prism.set_position(np.array([-10e-3, 0, 200e-3, 1])) screen = oe.ScreenElement(x=np.array([0, 0, 400e-3])) screen.rotate_element(0, 0 * np.pi / 180) r1 = rs.Collimated1DSource(numRays=3, xDim=1e-3, l=263e-9, color=(0.15, 0.1, 0.75)) optSys.add_element(prism) optSys.add_element(screen)
logger = logging.getLogger() while len(logger.handlers): logger.removeHandler(logger.handlers[0]) f = logging.Formatter( "%(asctime)s - %(module)s. %(funcName)s - %(levelname)s - %(message)s") fh = logging.StreamHandler() fh.setFormatter(f) logger.addHandler(fh) logger.setLevel(logging.INFO) opt_sys = optsys.OpticalSystem() grating = oe.GratingElement(x=np.array([0, 0, 20e-3]), grating_period=260e-9, m=1, side_length=25.4e-3) # grating.set_rotation(0, -28.5*np.pi/180) mirror0 = oe.MirrorElement( n=1.5, thickness=10e-3, x=np.array([0, 0, 20e-3]), material=opt_sys.material_library.get_material('fs'), size=50.8e-3) mirror1 = oe.MirrorElement( n=1.5, thickness=10e-3, x=np.array([0, 0, 100e-3]), material=opt_sys.material_library.get_material('fs'), size=250.8e-3)
while len(logger.handlers): logger.removeHandler(logger.handlers[0]) f = logging.Formatter( "%(asctime)s - %(module)s. %(funcName)s - %(levelname)s - %(message)s") fh = logging.StreamHandler() fh.setFormatter(f) logger.addHandler(fh) logger.setLevel(logging.INFO) opt_sys = optsys.OpticalSystem() fs = opt_sys.material_library.get_material('fs') grating = oe.GratingElement(x=np.array([0, 0, 50e-3]), grating_period=260e-9, m=1) # grating = oe.GratingElement(x=np.array([0, 0, 50e-3]), grating_period=30e-8, m=1) grating.set_rotation(0, -28.5 * np.pi / 180) lens0 = oe.PCXElement(x=np.array([0, 0, 100e-3]), r=250e-3, thickness=4.4e-3, material=fs, size=50.8e-3) lens1 = oe.PCXElement(x=np.array([0, 0, 100e-3]), r=250e-3, thickness=4.4e-3, material=fs, size=50.8e-3)
logger = logging.getLogger() while len(logger.handlers): logger.removeHandler(logger.handlers[0]) f = logging.Formatter( "%(asctime)s - %(module)s. %(funcName)s - %(levelname)s - %(message)s") fh = logging.StreamHandler() fh.setFormatter(f) logger.addHandler(fh) logger.setLevel(logging.INFO) optSys = optsys.OpticalSystem() slab = oe.OpticalElement(n=1.5, thickness=10e-3, x=np.array([0, 0, 100e-3]), material=optSys.material_library.get_material('fs'), size=12.7e-3) slab.set_rotation(0, 33 * np.pi / 180) slab2 = oe.OpticalElement(n=1.5, thickness=10e-3, x=np.array([0, 0, 300e-3]), material=optSys.material_library.get_material('fs'), size=12.7e-3) slab2.set_rotation(0, 0 * np.pi / 180) prismMat = om.OpticalMaterial('n', [], [], 1.1) prismMat = optSys.material_library.get_material('fs') prism = oe.PrismElement(x=np.array([0, 0, 50e-3]), n=1.5,
devAngle = 65 * np.pi / 180 prismAngle = 51 * np.pi / 180 prism1Insert = 0e-3 prism2Insert = 27e-3 prism3Insert = 0e-3 prism4Insert = 0e-3 prismOffset = 7e-3 prismMat = optSys.material_library.get_material('sapphire') apex = 57 * np.pi / 180 lensMat = optSys.material_library.get_material('fs') prism = oe.PrismElement(x=np.array([0, 0, 50e-3]), n=1.5, apexAngle=apex, sideLength=50e-3, material=prismMat) prism.set_position(np.array([-prismOffset + prism1Insert, 0, 200e-3, 1])) prism.rotate_element(0, prismAngle) prism2 = oe.PrismElement(x=np.array( [-prismOffset + 0e-3 + prism2Insert, 0, 300e-3]), n=1.5, apexAngle=apex, sideLength=50e-3, material=prismMat) # prism2.reverseElement() # prism2.rotateElement(0, np.pi - prismAngle) prism2.rotate_element(0, prismAngle)