;meas_line_angle.pro ;HEG part = 1 lam_line = 15.01 ; A ;MEG part = 2 ;;lam_line = 18.972 ; A lam_line = 15.01 ; A reg_size = 10.0 ; pixels periods = [1.E9, 2000.81, 4001.41, 9912.16] angles = [0.0, -5.235, 4.725, 0.01] part_names=['Zero','HEG','MEG','LEG'] angle = angles(part) period = periods(part) rcspacing = 8632.48 dist = (rcspacing*lam_line/period )/oa_pixel_size selp = where( (ABS((oa_ax-oa_aveAX)-dist*COS(angle*!DTOR)) $ LT 0.5*reg_size) AND $ (ABS((oa_ay-oa_aveAY)-dist*SIN(angle*!DTOR)) $ LT 0.5*reg_size) ) selm = where( ABS((oa_ax-oa_aveAX) + dist*COS(angle*!DTOR)) $ LT 0.5*reg_size AND $ ABS((oa_ay-oa_aveAY) + dist*SIN(angle*!DTOR)) $ LT 0.5*reg_size ) fpieces = STR_SEP(oa_filename,'/') last_filename = fpieces(n_elements(fpieces)-1) title = part_names(part)+' '+STRING(lam_line,FORMAT='(F8.3)')+ $ ' A line, ' + last_filename avepX = TOTAL(oa_ax(selp)-oa_aveAX)/n_elements(selp) avepY = TOTAL(oa_ay(selp)-oa_aveAY)/n_elements(selp) avemX = TOTAL(oa_ax(selm)-oa_aveAX)/n_elements(selm) avemY = TOTAL(oa_ay(selm)-oa_aveAY)/n_elements(selm) meas_angle = (avepY - avemY)/(avepX - avemX) meas_angle = ATAN(meas_angle)/!DTOR print, '' print, ' '+title print, '' print, ' Plus-side: ', avepX, avepY print, ' Minus-side: ', avemX, avemY print, ' Angle: ', meas_angle print, '' !p.multi=[0,1,2] plot, oa_ax(selp)-oa_aveAX, oa_ay(selp)-oa_aveAY, PSYM=4, $ XRANGE=dist*COS(angle*!DTOR)+reg_size*[-0.5,0.5], /XSTYLE, $ YRANGE=dist*SIN(angle*!DTOR)+reg_size*[-0.5,0.5], /YSTYLE,$ TITLE=title oplot, avepX+[-2.0,2.0], avepY+[0.0,0.0] oplot, avepX+[0.0,0.0], avepY+[-2.0,2.0] plot, oa_ax(selm)-oa_aveAX, oa_ay(selm)-oa_aveAY, PSYM=4, $ XRANGE=-1.0*dist*COS(angle*!DTOR)+reg_size*[-0.5,0.5], /XSTYLE, $ YRANGE=-1.0*dist*SIN(angle*!DTOR)+reg_size*[-0.5,0.5], /YSTYLE,$ TITLE=title oplot, avemX+[-2.0,2.0], avemY+[0.0,0.0] oplot, avemX+[0.0,0.0], avemY+[-2.0,2.0]