pro invert_data_file ;Take Ed's data files and create visfit and sigma structure arrays, which will ;used for plotting spawn,'rm temp.txt' spawn,'ls ~/RHESSI/forward_fit/bp_ff_clean/ed_params/*09-08*.dat > temp.txt' spawn,'wc temp.txt',result n = fix((strsplit(result,' ',/extract))[0]) ;number of files help,n openr,1,'temp.txt' files = strarr(n) readf,1,files close,1 spawn,'wc '+files[0],result i = fix((strsplit(result,' ',/extract))[0]) ;number of lines in each file, same for each file for ctr=0,n-1 do begin openr,1,files[ctr] lines = strarr(i) readf,1,lines close,1 ;first source parameters source1 = strsplit(lines[3],' ',/extract) flux1 = float(source1[1]) x1 = float(source1[2]) y1 = float(source1[3]) size1 = float(source1[4]) loop1 = float(source1[5]) alb1 = float(source1[6]) ht1 = float(source1[7]) ecmsr1 = float(source1[8]) ecc1 = float(source1[9]) visfit1 = {HSI_VIS_SRC_STRUCTURE,srctype:'circle',srcflux:flux1,srcx:x1,$ srcy:y1,srcfwhm:size1,eccen:ecc1,srcpa:ecmsr1,loop_angle:loop1,$ albedo_ratio:alb1,srcheight:ht1} ;second source parameters source2 = strsplit(lines[4],' ',/extract) flux2 = float(source2[1]) x2 = float(source2[2]) y2 = float(source2[3]) size2 = float(source2[4]) loop2 = float(source2[5]) alb2 = float(source2[6]) ht2 = float(source2[7]) ecmsr2 = float(source2[8]) ecc2 = float(source2[9]) visfit2 = {HSI_VIS_SRC_STRUCTURE,srctype:'circle',srcflux:flux2,srcx:x2,$ srcy:y2,srcfwhm:size2,eccen:ecc2,srcpa:ecmsr2,loop_angle:loop2,$ albedo_ratio:alb2,srcheight:ht2} ;combine into one structure array visfit = [visfit1,visfit2] ;first source sigmas (overwrites parameters) sd1 = strsplit(lines[6],' ',/extract) flux1 = float(sd1[1]) x1 = float(sd1[2]) y1 = float(sd1[3]) size1 = float(sd1[4]) loop1 = float(sd1[5]) alb1 = float(sd1[6]) ht1 = float(sd1[7]) ecmsr1 = float(sd1[8]) ecc1 = float(sd1[9]) sigma1 = {HSI_VIS_SRC_STRUCTURE,srctype:'std.dev',srcflux:flux1,srcx:x1,$ srcy:y1,srcfwhm:size1,eccen:ecc1,srcpa:ecmsr1,loop_angle:loop1,$ albedo_ratio:alb1,srcheight:ht1} ;second source sigmas (overwrites, too) sd2 = strsplit(lines[7],' ',/extract) flux2 = float(sd2[1]) x2 = float(sd2[2]) y2 = float(sd2[3]) size2 = float(sd2[4]) loop2 = float(sd2[5]) alb2 = float(sd2[6]) ht2 = float(sd2[7]) ecmsr2 = float(sd2[8]) ecc2 = float(sd2[9]) sigma2 = {HSI_VIS_SRC_STRUCTURE,srctype:'std.dev',srcflux:flux2,srcx:x2,$ srcy:y2,srcfwhm:size2,eccen:ecc2,srcpa:ecmsr2,loop_angle:loop2,$ albedo_ratio:alb2,srcheight:ht2} ;combine sigmas sigma = [sigma1,sigma2] dat_num = strcompress(ctr+1,/rem) save,visfit,sigma,filename='data'+dat_num+'.sav' endfor return end