Visibility workshop
From RHESSI Wiki
(Difference between revisions)
m |
(→Visibilities on the Command Line (by P. Saint-Hilaire)) |
||
Line 6: | Line 6: | ||
== Visibilities on the Command Line (by P. Saint-Hilaire) == | == Visibilities on the Command Line (by P. Saint-Hilaire) == | ||
+ | |||
+ | <source lang="ittvis_idl"> | ||
+ | ;;CODE FOR DEMO: | ||
+ | |||
+ | ;RESTORE, 'visibility_bag_20021126.sav',/V | ||
+ | RESTORE, 'visibility_bag_20021126_5min.sav',/V | ||
+ | RESTORE, 'srctrack_20021126.sav',/V | ||
+ | |||
+ | vis00=vis0 | ||
+ | ;ss=WHERE(vis00.isc GE 7) & vis0=vis00[ss] | ||
+ | ss=WHERE(vis00.trange[0] GE anytim('2002/11/26 20:00') AND vis00.trange[0] LE anytim('2002/11/26 22:00')) & vis0=vis00[ss] | ||
+ | |||
+ | nvis=N_ELEMENTS(vis0) | ||
+ | phase_map_center=vis0[0].xyoffset ;; reference phase_map_center to fool software with | ||
+ | |||
+ | |||
+ | .RUN | ||
+ | vis1='bla' | ||
+ | FOR i=0L, nvis-1 DO BEGIN | ||
+ | IF i MOD 1000 EQ 0 THEN PRINT, i | ||
+ | t=get_edges(vis0[i].trange,/mean) | ||
+ | newx=INTERPOL(srctrack.X, srctrack.t, t) | ||
+ | newy=INTERPOL(srctrack.Y, srctrack.t, t) | ||
+ | tmp=hsi_vis_shift_mapcenter(vis0[i], [newx,newy]) ;;changing the phase so that each visibility is centered on source's exact centroid position | ||
+ | IF datatype(vis1) EQ 'STR' THEN vis1=tmp ELSE vis1=[vis1,tmp] | ||
+ | ENDFOR;i | ||
+ | END;.RUN | ||
+ | vis1.xyoffset=phase_map_center ;; makes the s/w believe all the visibilities are referenced to the same xyoffset (phase_map_center) | ||
+ | |||
+ | ;RESTORE,'vis1.sav',/V | ||
+ | |||
+ | !P.MULTI=[0,1,3] | ||
+ | LOADCT,5 | ||
+ | |||
+ | ERRWEIGHT=0 | ||
+ | |||
+ | ss=WHERE(vis0.isc NE 6 AND vis0.isc GE 3) & vis0f=hsi_vis_combine(hsi_vis_edit(vis0[ss]), ERRWEIGHT=ERRWEIGHT) | ||
+ | uv_smooth, vis0f, map, reconstructed_map_visibilities=rmv | ||
+ | plot_map, /LIMB, map, /ISO | ||
+ | |||
+ | ss=WHERE(vis1.isc NE 6 AND vis1.isc GE 3) & vis1f=hsi_vis_combine(hsi_vis_edit(vis1[ss]), ERRWEIGHT=ERRWEIGHT) | ||
+ | uv_smooth, vis1f, map | ||
+ | plot_map, /LIMB, map, /ISO | ||
+ | |||
+ | |||
+ | |||
+ | ;; compare vis0 (rchi2: 9.5) and vis1 (rchi2:5.8) | ||
+ | hsi_vis_fwdfit, vis0f, CIRCLE=0, srcout=srcout, fitstddev=fitstddev | ||
+ | |||
+ | </source> |
Revision as of 13:10, 4 August 2010
Welcome to the visibility workshop!
Introduction (by G. Hurford)
Imaging with Visibility (by P. Saint-Hilaire)
Visibilities on the Command Line (by P. Saint-Hilaire)
;;CODE FOR DEMO: ;RESTORE, 'visibility_bag_20021126.sav',/V RESTORE, 'visibility_bag_20021126_5min.sav',/V RESTORE, 'srctrack_20021126.sav',/V vis00=vis0 ;ss=WHERE(vis00.isc GE 7) & vis0=vis00[ss] ss=WHERE(vis00.trange[0] GE anytim('2002/11/26 20:00') AND vis00.trange[0] LE anytim('2002/11/26 22:00')) & vis0=vis00[ss] nvis=N_ELEMENTS(vis0) phase_map_center=vis0[0].xyoffset ;; reference phase_map_center to fool software with .RUN vis1='bla' FOR i=0L, nvis-1 DO BEGIN IF i MOD 1000 EQ 0 THEN PRINT, i t=get_edges(vis0[i].trange,/MEAN) newx=INTERPOL(srctrack.X, srctrack.t, t) newy=INTERPOL(srctrack.Y, srctrack.t, t) tmp=hsi_vis_shift_mapcenter(vis0[i], [newx,newy]) ;;changing the phase so that each visibility is centered on source's exact centroid position IF datatype(vis1) EQ 'STR' THEN vis1=tmp ELSE vis1=[vis1,tmp] ENDFOR;i END;.RUN vis1.xyoffset=phase_map_center ;; makes the s/w believe all the visibilities are referenced to the same xyoffset (phase_map_center) ;RESTORE,'vis1.sav',/V !P.MULTI=[0,1,3] LOADCT,5 ERRWEIGHT=0 ss=WHERE(vis0.isc NE 6 AND vis0.isc GE 3) & vis0f=hsi_vis_combine(hsi_vis_edit(vis0[ss]), ERRWEIGHT=ERRWEIGHT) uv_smooth, vis0f, map, reconstructed_map_visibilities=rmv plot_map, /LIMB, map, /ISO ss=WHERE(vis1.isc NE 6 AND vis1.isc GE 3) & vis1f=hsi_vis_combine(hsi_vis_edit(vis1[ss]), ERRWEIGHT=ERRWEIGHT) uv_smooth, vis1f, map plot_map, /LIMB, map, /ISO ;; compare vis0 (rchi2: 9.5) and vis1 (rchi2:5.8) hsi_vis_fwdfit, vis0f, CIRCLE=0, srcout=srcout, fitstddev=fitstddev