#============================================================================= # # Marc A. Murison # Astronomical Applications Dept. # U.S. Naval Observatory # 3450 Massachusetts Ave., NW # Washignton, DC 20392 # murison@riemann.usno.navy.mil # http://aa.usno.navy.mil/AESOP/ # #============================================================================= AESOP_LOADED := 0: oldecho := interface(echo): interface( echo=0 ): #----------------------------------------------------------------------------- # # Initialization for AESOP # #----------------------------------------------------------------------------- lprint(`#===========================================#`): lprint(`# AESOP #`): lprint(`# (An Extensible Symbolic Optics Processor) #`): lprint(`# version 97.05.06 #`): lprint(`#===========================================#`): lprint(`# Marc A. Murison #`): lprint(`# U.S. Naval Observatory #`): lprint(`# Astronomical Applications Dept. #`): lprint(`# murison@riemann.usno.navy.mil #`): lprint(`# http://aa.usno.navy.mil/AESOP/ #`): lprint(`#===========================================#`): print(` `): # # assign global variables # read `c:/maple/startup.p`: macro( CONVEX=0, CONCAVE=1 ); time0 := time(): AESOP_reserved := [ x, y, z, dir, pos, eqn, coord, path, point, beam, mirror, lens, xaxis, yaxis, zaxis, origin, nxaxis, nyaxis, nzaxis ]: unprotect( op(AESOP_reserved) ): x := 'x': y := 'y': z := 'z': dir := 'dir': pos := 'pos': eqn := 'eqn': coord := 'coord': path := 'path': point := 'point': beam := 'beam': mirror := 'mirror': lens := 'lens': xaxis := 'xaxis': yaxis := 'yaxis': zaxis := 'zaxis': origin := 'origin': nxaxis := 'nxaxis': nyaxis := 'nyaxis': nzaxis := 'nzaxis': assume( x, real ); assume( y, real ); assume( z, real ); # # read the AESOP files # UTILS_READ := 0: OBJECTS_READ := 0: OPSYS_READ := 0: INTERSCT_READ := 0: SURFNORM_READ := 0: REFLECT_READ := 0: AESOPUTL_READ := 0: ZERNIKE_READ := 0: ZERNCOEF_READ := 0: read`d:/optics/AESOP/aesoputl.p`: read`d:/optics/AESOP/opsys.p`: read`d:/optics/AESOP/intersct.p`: read`d:/optics/AESOP/surfnorm.p`: read`d:/optics/AESOP/reflect.p`: read`d:/optics/AESOP/zseries.p`: # # more global assignments # xaxis := vector( [1, 0, 0] ): yaxis := vector( [0, 1, 0] ): zaxis := vector( [0, 0, 1] ): nxaxis := vector( [-1, 0, 0] ): nyaxis := vector( [0, -1, 0] ): nzaxis := vector( [0, 0, -1] ): origin := point( [0, 0, 0] ): # # protect the AESOP reserved names # protect( op(AESOP_reserved) ): interface( echo=oldecho ): AESOP_LOADED := 1: