; load the chi-squared data from filtered lensview log ; grep out lines with "main: Starting minimis" and "main: ImgDoConjGradient returned" ; from the log file. Then load them with this. ; Works for a single value of crit radius. You should chop up the filtered ; file to unique vel dispersions ; surf: the chi-squared value ; ordsh: the shear ordinate ; ordsa: the shear angle ordinate pro makechiarr_sersic, filename, surf, ordcritrad, ordsh, ordsa, ordcr restore,'/home/rwayth/idl/surfacetempl.dat' chidata = read_ascii(filename, TEMPLATE = template_sersic) ; field 7 "lensoffset" ; field 8 "x:" ; field 9 x offset ; field 10 "offsety:" ; field 11 y offset ; field 12 "Critrad:" or some mass scale ; field 13 mass_scale ; field 14 "shear/Ellipticity" ; field 15 shear ; field 16 "Orient_Angle" ; field 17 shear angle (degrees) ; field 18 "Sersic_scale_len" ; field 19 scale radius ; field 20 "R_power" ; field 21 sersic r factor ; field 22 date ; field 23 time ; field 24 "main:" ; field 25 "img_DoConjGradient" ; field 26 "returned" ; field 27 return value ; field 28 "Chi" ; field 29 "Squ:" ; field 30 chi-square value ; field 31 "Entropy:" ; field 32 entropy ; field 33,34 "Reduced chisqu:" ; field 35 reduced_chisqu xosize = size([uniq(chidata.FIELD09[sort(chidata.FIELD09)])]) yosize = size([uniq(chidata.FIELD11[sort(chidata.FIELD11)])]) mssize = size([uniq(chidata.FIELD13[sort(chidata.FIELD13)])]) shsize = size([uniq(chidata.FIELD15[sort(chidata.FIELD15)])]) sasize = size([uniq(chidata.FIELD17[sort(chidata.FIELD17)])]) scsize = size([uniq(chidata.FIELD19[sort(chidata.FIELD19)])]) shord = fltarr(shsize[1]) saord = fltarr(sasize[1]) critradord = fltarr(mssize[1]) crord = fltarr(scsize[1]) print,'Kappa size: ',strtrim(string(mssize[1]),2),', Ellip size: ',strtrim(string(shsize[1]),2),'. Ang size: ',strtrim(string(sasize[1]),2),'. Scale len size: ',strtrim(string(scsize[1]),2),'.' surface = fltarr(mssize[1], shsize[1],sasize[1],scsize[1]) for k=0, mssize[1]-1 do begin critradord[k] = chidata.FIELD13[k*sasize[1]*shsize[1]*scsize[1]] for l=0, shsize[1] -1 do begin shord[l] = chidata.FIELD15[l*sasize[1]*scsize[1]] for i=0,sasize[1]-1 do begin saord[i] = chidata.FIELD17[i*scsize[1]] for j=0, scsize[1]-1 do begin crord[j] = chidata.FIELD19[j] surface[k,l,i,j] = chidata.FIELD30[k*sasize[1]*shsize[1]*scsize[1] + l*scsize[1]*sasize[1] + i*scsize[1] + j] endfor endfor endfor endfor surf = surface ordsh = shord ordsa = saord ordcritrad = critradord ordcr = crord end