光杠杆法测量金属丝杨氏模量

根据自己理解来写的,可能会有错误

# 杨氏模量的测量
# 单位都是毫米
import math

L = float(input('金属丝的原长L:')) / 1000
D = float(input('反射镜中心到标尺的垂直距离D:')) / 1000
H = float(input('光杠杆常数的长度H:')) / 1000

# 输入拉力值、g、和测得的六个金属丝直径,以及螺旋测微器的零差d0
m = float(input('拉力值m0:'))  # 单位Kg
g = float(input('g:'))  # 单位9.8N/Kg
d = input('金属丝的直径视值di:')  # 六个数,注意以逗号隔开
d0 = float(input('螺旋测微器的零差d0:')) / 1000
d_list = d.split(',')
d_new_list = [float(i) / 1000 for i in d_list]
# 算出d视的平均值,d视=d平均+d0
s = 0
for i in d_new_list:
    s = s + i
d_ave = s / 6
d = d_ave + d0

# 输入加力和减力时候的标尺刻度,10个数
x_add = input('加力时标尺刻度:')  # 10个数,注意以逗号隔开
x_add_list = x_add.split(',')
x_add_new_list = [float(i) for i in x_add_list]
x_cut = input('减力时标尺刻度:')  # 10个数,注意以逗号隔开
x_cut_list = x_cut.split(',')
x_cut_new_list = [float(i) for i in x_cut_list]
# 计算平均值,再得到标度尺刻度该变量的平均值,10个数
xi_list = [((x_add + x_cut) / 2) for x_add, x_cut in zip(x_add_new_list, x_cut_new_list)]
print('平均值', xi_list)
X = 0
for i in range(5):
    delta_xi = xi_list[i + 5] - xi_list[i]
    X = X + delta_xi

new_delta_x = X / 5000

print('new_delta_x', new_delta_x)
E = (8 * m * g * L * H * 1) / (math.pi * d * d * D * new_delta_x)

print('E', E)

猜你喜欢

转载自blog.csdn.net/qq_61897309/article/details/129226564
今日推荐