def PlotConvergence(filename): """ this function only serves to plot the energy vs. time for a calculation to visualize convergence. """ file,ext=os.path.splitext(filename) file=file+'.txt' try: f=open(file,'r') except: print "that text file (%s) doesn't exist!" % file sys.exit() regexp=re.compile('DFT:\s+\d+') times,energies=[],[] for line in f.readlines(): if regexp.search(line): fields=line.split() times.append(string.atof(fields[1])) energies.append(string.atof(fields[3])) data1=Data(x=times,y=energies) p=GracePlot() p.plot(data1)
'CoPt/Pt-Co-Pt-Pt-relaxed.nc', 'NiPt/Pt-Ni-Pt-Pt-relaxed.nc', 'Pt/Pt-relaxed.nc'] labels=['Pt/Ti/Pt', 'Pt/V/Pt', 'Pt/Cr/Pt', 'Pt/Mn/Pt', 'Pt/Fe/Pt', 'Pt/Co/Pt', 'Pt/Ni/Pt', 'Pt/Pt'] p=GracePlot(3,4.0) p.SetView(xmin=0.15,xmax=0.95,ymin=0.12,ymax=1.2) p._send('map color 3 to (225,225,225),"gray"') p._send('map color 4 to (200,200,200),"gray10"') p._send('map color 5 to (175,175,175),"gray20"') p._send('map color 6 to (150,150,150),"gray40"') p._send('map color 7 to (125,125,125),"gray60"') p._send('map color 8 to (100,100,100),"gray80"') p._send('map color 9 to (75,75,75),"gray80"') p._send('map color 10 to (50,50,50),"gray80"') DataSets=[] Nd=[] for i in range(len(list)): e,d,ef,df,filling=LoadData(list[i])
import string from GracePlot.GracePlot import * from Numeric import * ed=[-2.44, -2.60, -2.74, -2.84, -3.00, -3.12, -3.18, -3.16] ed.reverse() labels=['Ti', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni' ,'Pt'] xvalues=range(len(ed)) p=GracePlot(3,4.0) p.SetView(xmin=0.15,xmax=0.95,ymin=0.12,ymax=1.2) d=Data(xvalues,ed, symbol=Symbol(symbol=circle,fillcolor=black,size=1.4), line=Line(linestyle=0)) p.plot(d) p.xaxis(tick=Tick(SpecialTicks=SpecialTicks((0, 'Ti'), (1, 'V'), (2, 'Cr'), (3, 'Mn'), (4, 'Fe'), (5, 'Co'), (6, 'Ni'), (7, 'Pt')))) p.text(x=0,y=-2.45,string='(a.)',font=2,charsize=1.6) p.redraw() p.xlabel('Subsurface Metal') p.ylabel('d-band center (eV)') p.save('figure_1a.eps') p.save('figure_1a.pdf')