real_fw.append(hdu.data.field(5).tolist()) real_temps.append(hdu.data.field(6).tolist()) if isinstance(hdu,astropy.io.fits.hdu.image.ImageHDU): real_imgs.append(hdu.data) real_lines=[item for sublist in real_lines for item in sublist] real_fw=[item for sublist in real_fw for item in sublist] real_rv=[item for sublist in real_rv for item in sublist] real_temps=[item for sublist in real_temps for item in sublist] real_mol=[item for sublist in real_mol for item in sublist] return real_lines,real_fw,real_temps,real_imgs,real_rv,real_mol ldb=db.lineDB(dbpath) ldb.connect() m_list=ldb.getMoleculeList(vu.freq_correct(f_pos-bw/2,-rvel),vu.freq_correct(f_pos+bw/2,-rvel)) ldb.disconnect() print m_list print len(m_list) while True: cube = factory.unitary_IMC_cube(template) if len(cube.hdulist) > 1: break real_lines,real_fw,real_temps,real_imgs,real_rv,real_mol=extract_data(cube) mols=dict() mcon=0 #print real_mol for i in range(len(real_lines)):
real_temps=[item for sublist in real_temps for item in sublist] real_mol=[item for sublist in real_mol for item in sublist] return real_lines,real_fw,real_temps,real_imgs,real_rv,real_mol cube = factory.unitary_IMC_cube(template) real_lines,real_fw,real_temps,real_imgs,real_rv,real_mol=extract_data(cube) mols=dict() mcon=0 #print real_mol for i in range(len(real_lines)): if real_mol[i] not in mols.keys(): st=real_mol[i] mols[st]=mcon mcon+=1 real_lines[i]=vu.freq_correct(real_lines[i],real_rv[i]) real_fw[i]=vu.S_FACTOR*vu.fwhm2sigma(real_lines[i],real_fw[i]) for i in range(len(real_mol)): real_mol[i]=mols[real_mol[i]] cs=len(real_imgs)/6+1 col=3 if cs > 3: col=cs cs=3 #aplt.imshow(real_imgs[0].transpose()) #plt.axis('off') #X,Y=np.meshgrid(np.arange(len(real_imgs[0])),np.arange(len(real_imgs[1][0])),sparse=False, indexing='xy')