def __init__ (   self,
  extras 
)

Definition at line 225 of file general_optics_example.py.

00225                                 :
00226         inch=0.0254
00227         entrance_y=5.0*inch
00228         y0=2.5*inch #height of main line off table)
00229         my=blue_through_ylf
00230         optics={}
00231         
00232         #first, list all mirrors, and point them at each other
00233         optics[my.UVM1]=mir("UVM1", (13*inch, entrance_y, 7.5*inch))
00234         optics[my.UVM2]=mir("UVM2", (7.5*inch, entrance_y, 7.5*inch))
00235         optics[my.PS1u]=mir("Blue Peri 1 upper", (8*inch, entrance_y, 37*inch))
00236         optics[my.PS1d]=mir("Blue Peri 1 lower", (8*inch, y0, 37*inch))
00237         optics[my.UVM3]=mir("UVM3", (36*inch, y0, 38*inch))
00238         optics[my.UVM4]=mir("UVM4", (36*inch, y0, 137.5*inch))
00239         optics[my.UVM5]=mir("UVM5", (43.5*inch, y0, 49.5*inch))
00240         optics[my.UVM6]=mir("UVM6", (46.5*inch, y0, 137.5*inch))
00241         optics[my.UVM7]=mir("UVM7", (38*inch, y0, 38*inch))
00242         optics[my.UVM8]=mir("UVM8", (41.5*inch, y0, 136*inch))
00243         optics[my.UVM9]=mir("UVM9", (53*inch, y0, 136*inch))
00244         optics[my.UVM10]=mir("UVM10", (53*inch, y0, 41*inch))
00245         optics[my.UVM11]=mir("UVM11", (48*inch, y0, 41*inch))
00246         optics[my.UVM12]=mir("YLF retro", (48*inch, y0,80.5*inch))
00247         optics[my.YLF_SPLIT]=mir("YLF exit splitter", (48*inch, y0, 47.8*inch))
00248         
00249         optics[my.UVL1]=lens("UVL1", f=+0.75).place_between(optics[my.UVM3], optics[my.UVM4], 4.0*inch)
00250         optics[my.UVL2]=lens("UVL2", f=+1.00).place_between(optics[my.UVL1], optics[my.UVM4], 83*inch-0.0*inch)
00251                 
00252         optics[my.DEMAG1]=lens("UVL3", f=+0.75).place_between(optics[my.UVM9], optics[my.UVM10], 23.0*inch)
00253         optics[my.DEMAG2]=lens("UVL4", f=+1.00).place_between(optics[my.DEMAG1], optics[my.UVM10], 1.7+5.0*inch)
00254 
00255         optics[my.SERR]=null_optic("Serr. Aperture", width=1.0*inch, thickness=0.1*inch).place_between(optics[my.DEMAG1], optics[my.DEMAG2], 3*inch)
00256         optics[my.FILTER]=null_optic("Filter Aperture", width=1.0*inch, thickness=0.1*inch).place_between(optics[my.DEMAG1], optics[my.DEMAG2], 0.75)
00257         
00258         looks=[my.UVM1, my.UVM2, my.PS1u, my.PS1d, my.UVM3, my.UVM4, my.UVM5, my.UVM6, my.UVM7,
00259             my.UVM8, my.UVM9, my.UVM10, my.UVM11, my.UVM12, my.YLF_SPLIT]
00260         #align all mirrors
00261         for i in range(1, len(looks)-1):
00262             optics[looks[i]].set_direction(optics[looks[i-1]], optics[looks[i+1]])
00263 
00264         order=[my.UVM1, my.UVM2, my.PS1u, my.PS1d, my.UVM3, my.UVL1, my.UVL2, my.UVM4, my.UVM5, my.UVM6, my.UVM7,
00265             my.UVM8, my.UVM9, my.DEMAG1, my.SERR, my.FILTER, my.DEMAG2, my.UVM10, my.UVM11, my.UVM12, my.YLF_SPLIT]
00266         
00267         #specify center and reference as (0,0,0) to make our coordinates absolute
00268         composite_optic.init(self, "blue line", optics, order, (0,0,0), (0,0,0), 0, extras=extras )
00269         
class ir_line(composite_optic):


Generated on Wed Nov 21 10:18:33 2007 for analysis by  doxygen 1.5.4