pro sycframe20090806a,sdate,stime,yy1,updmsc0,orgmsf,drcmsc,drcmsf,xx1=xx1,FIRST=first,LEFT=left,DRC=drc,SNOG=snog,PEVT=pevt,PRT=prt,DISPSYN=dispsyn,DISPSYC=dispsyc,MX=mx if n_params( ) lt 1 then begin print,'pro sycframe20090806a,sdate,stime,10,updmsc0,orgmsf,drcmsc,' print,' drcmsf,xx1=xx1,/first,/drc,/left,/snog(/pevt),/dispsyn' print,' /dispsyc,mx=' print,"sdate='1998.05.23' & stime='16:03:30'" print,"sdate='2002.08.27' & stime='14:35:20'" print,"xx1=30 in deg, yy1=10 in pixel" print,"Note:magnetogram and synoptic map must have same spatial resolution" return endif ; get remapped MDI MG files using sdate if keyword_set(first) then mkremapmmg,sdate,remapmmgf,/first $ else mkremapmmg,sdate,remapmmgf ; get mmgbra,B0,cl0,crn,t_obs based on stime mmgbra_remapmmgf,remapmmgf,stime,mmgbra,B0,cl0,crn,t_obs ;Br,Cl0 in deg sdatestime=sdate+':'+stime scrncl0=strtrim(crn,2)+':'+strtrim(cl0,2) ; cl0 in decimal degrees sz=SIZE(mmgbra) xmg=sz(1) & ymg=sz(2) ; in pixels ppdx=xmg/180. if not keyword_set(xx1) then xx1=30*ppdx else xx1=xx1*ppdx xx2=xmg-xx1 & yy2=ymg-yy1 ; xx1,xx2,yy2 in pixels*** good_mgbra=mmgbra(xx1:xx2,yy1:yy2) szgm=size(good_mgbra) xgmr=szgm(1) ; get updmsc0 (updated MSC), updmscf, and orgmsf (original MSF), orgmsff hwd=90-xx1/ppdx ; hwd in degrees if keyword_set(left) then itl=hwd else itl=180 ; itl in degrees ; if keyword_set(prt) then begin ; updmsc_crnclog20090806,crn,cl0,itl,updmsc0,/sinl,hwd ; endif else updmsc_crnclog20090806,crn,cl0,itl,updmsc0 ; updmsc_crnclog20090806,crn,cl0,itl,updmsc0 ; cl0 in degrees ; sz=SIZE(updmsc0) & xsm=sz(1) & ysm=sz(2) ; in pixels sitl=STRMID(STRTRIM(itl,2),0,3) ; updmscf='updmsc0_'+sitl+'_'+t_obs+'.fits' ; writefits,updmscf,updmsc0,hd ; print,updmscf ; orgmsf=updmsc0 xx1n=itl*ppdx-xgmr/2 & xx2n=itl*ppdx+xgmr/2 ; orgmsf(xx1n:xx2n,yy1:yy2)=good_mgbra ; orgmsff='orgmsf_'+sitl+'_'+t_obs+'.fits' ; writefits,orgmsff,orgmsf,hd ; print,orgmsff ; get drcmsc if keyword_set(drc) then begin ; if keyword_set(prt) then begin ; updmsc_crnclog20090806,crn-1,cl0,itl,updmscr,/sinl,hwd ; updmsc_crnclog20090806,crn+1,cl0,itl,updmscl,/sinl,hwd ; endif else begin ; updmsc_crnclog20090806,crn-1,cl0,itl,updmscr ; updmsc_crnclog20090806,crn+1,cl0,itl,updmscl ; endelse ; updmscrf='updmscr_'+sitl+'_'+t_obs+'.fits' ; updmsclf='updmscl_'+sitl+'_'+t_obs+'.fits' ; writefits,updmscrf,updmscr,hd ; writefits,updmsclf,updmscl,hd ; print,updmscrf,' ',updmsclf ; if keyword_set(left) then begin ; ; ldrcmsc_updmsc20090806,crn,cl0,hwd,updmsc0,updmscr,drcmsc,longi ldrcmsc_updmsc20090806a,crn,cl0,itl,drcmsc,longi ; endif else begin ; drcmsc_updmsc20090806,updmsc0,updmscr,updmscl,drcmsc,longi,/snog ; endelse drcmsf=drcmsc drcmsf(xx1n:xx2n,yy1:yy2)=good_mgbra if keyword_set(pevt) then begin drcmscf='drcmsc_pevt_'+sitl+'_'+t_obs+'.fits' drcmsff='drcmsf_pevt_'+sitl+'_'+t_obs+'.fits' endif else begin drcmscf='drcmsc_snog_'+sitl+'_'+t_obs+'.fits' drcmsff='drcmsf_snog_'+sitl+'_'+t_obs+'.fits' endelse writefits,drcmscf,drcmsc,hd writefits,drcmsff,drcmsf,hd print,drcmscf,' ',drcmsff endif if keyword_set(dispsyn) then begin ; Display scmgbra, updmsc0 and orgmsf if not keyword_set(mx) then mx=100 tek_color Figure1='orgmsf_'+sitl+'_'+t_obs+'.ps' clog=cl0 ; psout,031,Figure1 !p.multi=[0,1,3] ; Panel 1 xticsm_crnclog09,crn,cl0,itl,xticscb,xticsct xticsm_crnclog09,crn,cl0,itl,xticsfb,xticsft,/sf scmgbra=fltarr(xsm,ysm) ; x1=(itl-hwd)*ppd & x2=(itl+hwd)*ppd ; For MG in whole solar surface print,'xx1n,xx2n:',xx1n,xx2n help,good_mgbra scmgbra(xx1n:xx2n,yy1:yy2)=good_mgbra bscmgbra=bytscl(scmgbra,max=mx,min=-mx) pscimg06,bscmgbra,'Construction of Synoptic Frame',px,py,sy='sla' is=0 & ie=359*ppdx & di=10*ppdx for i=is,ie,di do oplot,[i,i],[-1,1] sc_annot06,1,xticb=xticsfb,longi='heliographic',/sinl ; yy1=yy1-90 & yy2=yy2-90 zgrid,xsm,ysm,phd,thd,lad slat=SIN(lad*!DTOR) yy1s=slat(yy1) & yy2s=slat(yy2) oplot,[itl,itl]*ppdx,[-1,1],thick=5,color=2 oplot,[xx1n,xx1n],[yy1s,yy2s],line=0,color=2 oplot,[xx2n,xx2n],[yy1s,yy2s],line=0,color=2 oplot,[xx1n,xx2n],[yy1s,yy1s],line=0,color=2 oplot,[xx1n,xx2n],[yy2,yy2],line=0,color=2 ; Panel 2 bupdmsc0=BYTSCL(updmsc0,max=mx,min=-mx) pscimg06,bupdmsc0,' ',px,py,sy='sla' for i=is,ie,di do oplot,[i,i],[-1,1],color=4 ; xticsct(6)='CR1936:200-centered Synoptic Chart' updsc_annot09,1,xticb=xticscb,xtict=xticsct,longi='carrington',/sinl oplot,[itl,itl]*ppdx,[-1,1],thick=5,color=2 oplot,[xx1n,xx1n],[yy1s,yy2s],line=2,color=2 oplot,[xx2n,xx2n],[yy1s,yy2s],line=2,color=2 oplot,[xx1n,xx2n],[yy1s,yy1s],line=2,color=2 oplot,[xx1n,xx2n],[yy2,yy2],line=2,color=2 print,sdate ; Panel 3 borgmsf=BYTSCL(orgmsf,max=mx,min=-mx) pscimg06,borgmsf,' ' ,px,py,sy='sla' for i=is,ie,di do oplot,[i,i],[-1,1],color=4 for i=xx1n,xx2n,di do oplot,[i,i],[yy1s,yy2s],thick=3 ; xticbh=xticscb ;xticbh(6)=xticsfb(6) ; xticsft(6)='1998.05.23_16:03:30 Synoptic Frame' updsc_annot09,1,xticb=xticscb,xtict=xticsfb,longi='hybrid',/sinl oplot,[itl,itl]*ppdx,[-1,1],thick=5,color=2 oplot,[xx1n,xx1n],[yy1s,yy2s],line=0,color=2 oplot,[xx2n,xx2n],[yy1s,yy2s],line=0,color=2 oplot,[xx1n,xx2n],[yy1s,yy1s],line=0,color=2 oplot,[xx1n,xx2n],[yy2,yy2],line=0,color=2 !p.multi=0 psdone print,'Finished '+Figure1 endif if keyword_set(dispsyc) then begin ; Display scmgbra, drcmsc and drcmsf if not keyword_set(mx) then mx=100 tek_color Figure2='drcmsf_'+sitl+'_'+t_obs+'.ps' clog=cl0 ; psout,031,Figure2 !p.multi=[0,1,3] ; Panel 1 xticsm_crnclog09,crn,cl0,itl,xticscb,xticsct xticsm_crnclog09,crn,cl0,itl,xticsfb,xticsft,/sf scmgbra=fltarr(xsm,ysm) ; x1=(itl-hwd)*ppd & x2=(itl+hwd)*ppd ; For MG in whole solar surface print,'xx1n,xx2n,yy1,yy2:',xx1n,xx2n,yy1,yy2 help,good_mgbra scmgbra(xx1n:xx2n,yy1:yy2)=good_mgbra bscmgbra=bytscl(scmgbra,max=mx,min=-mx) pscimg06,bscmgbra,'Construction of Synchronic Frame',px,py,sy='sla' is=0 & ie=359*ppdx & di=10*ppdx for i=is,ie,di do oplot,[i,i],[-1,1] sc_annot06,1,xticb=xticsfb,longi='heliographic',/sinl ; yy1=yy1-90 & yy2=yy2-90 zgrid,xsm,ysm,phd,thd,lad slat=SIN(lad*!DTOR) yy1=slat(yy1) & yy2=slat(yy2) oplot,[itl,itl]*ppdx,[-1,1],thick=5,color=2 oplot,[xx1n,xx1n],[yy1,yy2],line=0,color=2 oplot,[xx2n,xx2n],[yy1,yy2],line=0,color=2 oplot,[xx1n,xx2n],[yy1,yy1],line=0,color=2 oplot,[xx1n,xx2n],[yy2,yy2],line=0,color=2 ; Panel 2 bdrcmsc=BYTSCL(drcmsc,max=mx,min=-mx) pscimg06,bdrcmsc,' ',px,py,sy='sla' for i=is,ie,di do oplot,[i,i],[-1,1] ; xticsct(6)='CR1936:200-centered Synoptic Chart' updsc_annot09,1,xticb=xticsfb,xtict=xticsct,longi='heliographic',/sinl oplot,[itl,itl]*ppdx,[-1,1],thick=5,color=2 oplot,[xx1n,xx1n],[yy1,yy2],line=2,color=2 oplot,[xx2n,xx2n],[yy1,yy2],line=2,color=2 oplot,[xx1n,xx2n],[yy1,yy1],line=2,color=2 oplot,[xx1n,xx2n],[yy2,yy2],line=2,color=2 print,sdate ; Panel 3 bdrcmsf=BYTSCL(drcmsf,max=mx,min=-mx) pscimg06,bdrcmsf,' ' ,px,py,sy='sla' for i=is,ie,di do oplot,[i,i],[-1,1] for i=xx1n,xx2n,di do oplot,[i,i],[yy1,yy2],thick=3 ; for i=0,130,10 do oplot,[i,i],[-1,1],color=4 ; for i=230,359,10 do oplot,[i,i],[-1,1],color=4 ; for i=140,220,10 do oplot,[i,i],[-1,yy1],color=4 ; for i=140,220,10 do oplot,[i,i],[yy2,1],color=4 ; for i=140,220,10 do oplot,[i,i],[yy1,yy2] ; xticbh=xticscb ;xticbh(6)=xticsfb(6) ; xticsft(6)='1998.05.23_16:03:30 Synoptic Frame' updsc_annot09,1,xticb=xticsfb,xtict=xticsft,longi='heliographic',/sinl oplot,[itl,itl]*ppdx,[-1,1],thick=5,color=2 oplot,[xx1n,xx1n],[yy1,yy2],line=0,color=2 oplot,[xx2n,xx2n],[yy1,yy2],line=0,color=2 oplot,[xx1n,xx2n],[yy1,yy1],line=0,color=2 oplot,[xx1n,xx2n],[yy2,yy2],line=0,color=2 !p.multi=0 psdone print,'Finished '+Figure2 endif end