% Load the PCA data into variable structure "pid" variable pid = load_all("pca.pha"); % Put (conservative) 0.5%, systematic errors since PCA has very good statistics set_systematics(pid,[0],[127],[0.005]); % Group into bins with minimum S/N of 4.5 grppha_sn(pid,4.5,3.); % notice only bins with energy between 3-22 keV kev_note(pid,3.,22.); % Ditto for HEXTE, loading into structure "hid", but only keep 20-200 keV variable hid = load_all("hxt.pha"); grppha_sn(hid,4.5,20.); kev_note(hid,20.,200.); % load the radio and IR data, from an ascii file in format Freq (Hz) % Flux (mJy) Flux error (mJy) variable rid_struct = read_radio("53082_radio-OIR.dat",1000); variable rid = load_radio(rid_struct); % When using multiple data sets that need to be normalized with respect % to each other, you need to define a grid. Each data set, or sets, which has/have a % particular normalization goes in one grid. The grid must go out to % 1000keV even if there's no data there, if you're going to use a % reflection model, so we're going to do this just to have the option. % MIKE NOWAK: I need some text to explain this better....what is the % logic with the switch and cases? define grid_hook(id,s) { switch(id) { case(1): s.bin_lo = _A(10^[-9.:-7.:0.01]); s.bin_hi = make_hi_grid(s.bin_lo); } { s.bin_lo = _A(10^[-0.5:3:0.002]); s.bin_hi = make_hi_grid(s.bin_lo); } return s; } set_eval_grid_method (USER_GRID, [1:3], &grid_hook); % The radio and PCA data are assumed to have the same normalization % (because PCA calibration is very well understood), while the HEXTE % is normalized separately. The calibration is good enough now that % typically the normalization factor is between ~ 0.9-1.1 % The radio/PCA grid goes from 10^-9 to 10^3 KeV % The HEXTE grid is only high energy X-rays, so goes from 1-10^3 KeV usr_grid([rid,pid],-9,3,0.001,1); usr_grid([hid],0,3,0.001);