【发布时间】:2017-11-17 05:12:46
【问题描述】:
我正在尝试使用中点法作为数值方法来检查收敛性。我可以获得一张数据表,但我不确定如何绘制图表或添加对数刻度。到目前为止,这是我的代码。非常感谢任何帮助。
from math import exp,pi
import numpy as np
import matplotlib.pyplot as plt
def midpoint(f,a,b,n):
h=float( (b-a)/n)
result=0
for i in range(n):
result+=f((a+ h/2.0)+ i*h)
result*= h
return result
#g= lambda y: (y**3)/(exp(y)-1)
g=lambda y: ((exp(-y)*y**3)/(1-exp(-y)))
a=0
b=1000
print( 'n midpoint')
for i in range(1,20):
n=2**i
m=midpoint(g,a,b,n)
print('%7d %.16f' %(n,m))
"""r=(pi**4/15)
plt.plot(n,m,label="numberical")
plt.plot(n,r,label="analytical")
plt.xlabel('n')
plt.ylabel('intergral')
plt.legend()
plt.show()"""
"""plt.semilogx(n,m)
plt.show()"""
【问题讨论】:
标签: python matplotlib graph axis-labels