示例#1
0
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)
示例#2
0
    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)
示例#3
0
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)
示例#4
0
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)
示例#5
0
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)
示例#6
0
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,
示例#7
0
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)