def insertFSCData(self, iternum, refineIterData): fscfile = 'fsc.eotest.%d'%(iternum) fscpath = os.path.join(self.params['rundir'], "iter%03d"%(iternum), fscfile) if not os.path.isfile(fscpath): apDisplay.printWarning("Could not find FSC file: "+fscpath) return None f = open(fscpath, 'r') apDisplay.printMsg("inserting FSC Data into database") numinserts = 0 for line in f: fscq = appiondata.ApFSCData() fscq['refineIter'] = refineIterData sline = line.strip() bits = sline.split('\t') fscq['pix'] = int(bits[0]) fscq['value'] = float(bits[1]) numinserts+=1 if self.params['commit'] is True: fscq.insert() apDisplay.printMsg("inserted "+str(numinserts)+" rows of FSC data into database") f.close()
def insertFSCData(self, fscfile, refineIterData): ''' current functions read the inverse pixel number and correlation value. This function, therefore, converts generic FSC parameters into pixel / correlation format ''' if not os.path.isfile(fscfile): apDisplay.printWarning("Could not open FSC file: " + fscfile) ### skip commented out lines and read FSC data f = open(fscfile, 'r') fscfileinfo = f.readlines() f.close() for i, info in enumerate(fscfileinfo): if info[0] == "#": pass else: fscfileinfo = fscfileinfo[i:] break ### insert FSC data into database with the convention: pixel number, FSC numinserts = 0 for j, info in enumerate(fscfileinfo): fscq = appiondata.ApFSCData() fscq['refineIter'] = refineIterData fscq['pix'] = j + 1 fscq['value'] = float(info.split()[1]) numinserts += 1 if self.params['commit'] is True: fscq.insert() if self.params['commit'] is True: apDisplay.printMsg("inserted " + str(numinserts) + " rows of FSC data into database") return
def insertFSC(self, fscfile, refineIterData, commit=True): if not os.path.isfile(fscfile): apDisplay.printWarning("Could not open FSC file: "+fscfile) f = open(fscfile,'r') apDisplay.printMsg("inserting FSC Data into database") numinserts = 0 for line in f: fscq = appiondata.ApFSCData() fscq['refineIter'] = refineIterData line = line.rstrip() bits = line.split('\t') fscq['pix'] = int(bits[0]) fscq['value'] = float(bits[1]) numinserts+=1 if commit is True: fscq.insert() apDisplay.printMsg("inserted "+str(numinserts)+" rows of FSC data into database") f.close()