1.验证马吕斯定律:
import matplotlib.pyplot as plt
import numpy as np
# 原始数据
I = [1519, 1503, 1407, 1117, 867, 608, 355, 162, 39,
0, 50, 183, 386, 622, 863, 1118, 1318, 1444,
1501, 1447, 1321, 1148, 886, 616, 367, 174, 42,
0, 52, 193, 391, 632, 888, 1157, 1342, 1495]
a = np.linspace(0, 2 * np.pi, len(I))
a_ = np.linspace(0, 2 * np.pi, 10000)
x = (np.cos(a_)) ** 2
# 解决中文显示问题
plt.rcParams['font.sans-serif'] = ['KaiTi'] # 指定默认字体
# 画图
plt.figure(figsize=(8, 6))
plt.grid(True)
ax1 = plt.subplot(111)
plt.title("验证马吕斯定律", fontsize=15)
plt.ylim(0, 1600)
plt.yticks(np.linspace(0, 1600, 9))
plt.ylabel('I')
plt.xlim(0, 2 * np.pi)
plt.xticks(np.linspace(0, 2 * np.pi, 9), ['0', 'π/4', 'π/2', '3π/4', 'π', '5π/4', '3π/2', '7π/4', '2π'])
plt.plot(a, I)
plt.plot(a_, x * 1510, "--")
plt.show()
运行结果
实验曲线与标准曲线几乎重合,马吕斯定律得以验证
2.用1/4波片产生圆偏振光,椭圆偏振光
import matplotlib.cm
import matplotlib.pyplot as plt
import numpy as np
# 原始数据
I1 = [0, 107, 386, 709, 903, 909, 738, 419, 118,
0, 110, 399, 718, 947, 940, 730, 399, 114]
I2 = [171, 88, 182, 416, 668, 828, 836, 661, 399,
175, 91, 191, 422, 685, 834, 821, 653, 389]
I3 = [477, 338, 285, 334, 448, 578, 681, 679, 601,
461, 348, 298, 338, 454, 582, 686, 676, 601]
I4 = [454, 452, 450, 437, 443, 451, 459, 463, 468,
468, 470, 468, 454, 453, 443, 450, 448, 449]
I_ = [I1, I2, I3, I4]
for i in range(4):
I_[i].append(I_[i][0])
b = np.linspace(0, 2*np.pi, len(I4))
np.concatenate((b, [0]))
# 作图
fig = plt.figure(figsize=(8, 8))
cmap = plt.get_cmap('gist_rainbow', 4)
for i in range(4):
ax = plt.subplot(2, 2, i + 1, projection='polar')
ax.set_title('θ = {}°'.format(i*15))
ax.plot(b, I_[i], c=cmap(i))
ax.set_rlim(0, 1000)
ax.set_rticks(np.arange(0, 1000, 200))
fig.tight_layout(h_pad=0.7) # 调整子图之间的间距
plt.show()
运行结果
在 1/4波片光轴与起偏器夹角θ=45°时,o光和e光大小相等,形成圆偏振光,其余形成椭圆偏振光。