[英]how to construct a list of integers
我想繪制一個數字:energy vs N. 那么我如何計算不同 N 值的能量(此函數中的參數),然后繪制 Y 軸上的能量以及對應於每個能量值的每個 N 值x 軸。
def energy(N, k, a=4.05):
fcc = fcc100('Al', (1, 1, N), a=a, vacuum=7.5)
fcc.center(axis=2)
calc = GPAW(nbands=N * 3,
kpts=(k, k, 1),
h=0.25,
txt='slab-%d.txt' % N)
fcc.set_calculator(calc)
e = fcc.get_potential_energy()
calc.write('slab-%d.gpw' % N)
return e
也許它對你有用:
import numpy as np
import matplotlib.pyplot as plt
def f(t):
return np.exp(-t) * np.cos(2*np.pi*t)
t1 = np.arange(0.0, 3.0, 0.01)
plt.plot(t1, f(t1))
plt.show()
也許您只是想(我認為是這樣)生成具有不同值的列表。 然后,一個簡化的方法:
def fun(N):
e = []
for i in range(0, len(N)):
e.append(calculation(N[i]))
return e
import pandas as pd
import matplotlib.pyplot as plt
df = pd.DataFrame({'N':[23,78,22,19,45,33,20],'Energy':[1000,2000,3000,4000,5000,5500,6000]})
# a scatter plot comparing num_children and num_pets
df.plot(kind='scatter',x='N',y='Energy',color='red')
plt.show()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.