PRO Gravitational_Wave_LIGO
;引力波数据下载网址
url='http://www.ligo.org/science/GW100916/L-strain_hp30-968654552-10.txt'
;新建idlneturl对象,用于下载LIGO数据
net = IDLNETURL()
;LIGO数据下载路径,根据需要进行修改
file = 'D:\LIGOdata.txt'
;如果数据不存在,则下载,如果已经下载,则直接进行可视化。
IF ~FILE_TEST(file) THEN BEGIN
PRINT, '正在下载LIGO数据, 请稍候...'
!NULL = net.Get(url=url, filename=file)
PRINT, '数据下载完成.'
ENDIF
;获取数据行数,并初始化数组,用于存储LIGO数据
lines = FILE_LINES(file)
data=FLTARR(lines)
;读取LIGO数据
OPENR,lun,file,/get_lun
READF,lun,data
FREE_LUN, lun
;可视化
p=PLOT(data, XRANGE=[1,lines], COLOR = 'blue', $
TITLE='LIGO Livingston Observatory data for GW100916', $
XTITLE='Time[Seconds] from 2010-09-16 06:42:17 UTC (968654552.0)', $
YTITLE='Gravitational-wave strain amplitude', $
DIMENSIONS=[1000,500], /NO_TOOLBAR, $
XTICKLEN=1, YTICKLEN=1, XGRIDSTYLE=1, YGRIDSTYLE=1, $
XMAJOR = 11, YMAJOR=5, XMINOR=0, YMINOR=0, $
XTICKNAME = STRTRIM(INDGEN(11),2), $
FONT_SIZE=15, XTICKFONT_SIZE=13, YTICKFONT_SIZE=13)
PRINT, '数据可视化完成.'
END
|