def cal_plot(name, args, ints, conc, slope, intercept, r): plt.figure() plt.plot(conc, slope*conc + intercept, 'k-') plt.plot(conc, ints, 'o', ms=8) text_string = 'Slope: {:.2f}\nIntercept: {:.2f}\nR^2: {:.5f}' plt.text(0.5, ints.max()*0.8, text_string.format(slope, intercept, r**2)) plt.savefig(os.path.join(args.cal_folder, name+'_cal_curve'), dpi=200) plt.close() if __name__ == '__main__': h5f, table = cal_h5_build(args) refs, ref_files = cal_file('calibration.csv') gcms.clear_png(args.cal_folder) if args.nproc == 1: aias = [aia_build(i) for i in ref_files] else: p = Pool(args.nproc) aias = p.map(aia_build, ref_files) aias = dict( zip(ref_files, aias) ) for name in refs: int_extract(name, refs[name], aias, args) h5f.flush() h5f.close()
files = os.listdir(args.data_folder) files = [f for f in files if f[-3:] == 'CDF'] if args.cal_type == 'internal': std_cons = {} f = open('data.csv') next(f) for line in f: if line[0] == '#': continue elif line.isspace(): continue sp = line.split(',') std_cons[sp[0]] = float(sp[1]) f.close() gcms.clear_png(args.data_folder) if args.nproc > 1: pool = Pool(args.nproc) for fs in chunker(files, args.nproc): if args.nproc > 1: aias = pool.map(aia_proc, fs) else: aias = [ aia_proc(fs[0]), ] for aia in aias: f = os.path.split(aia.filename)[-1] name = f[:-4]