用Python计算光路追迹

被几何光学里面的重复计算搞疯,所以打算拿Python当个计算器

#结构参数:
n = eval(input("折射率n:"))
n0 = eval(input("折射率n':"))
r = eval(input("镜片曲率半径:"))
d = eval(input("与下一面距离:"))
#物方参数:
l = eval(input("物距(平行光轴入射输入值0):"))
h = eval(input("像高:"))
#判断是否平行光轴入射
if l == 0:
    i = h / r
    u = 0
    print(format(i,".4f"))
else:
    u = eval(input("输入物方孔径角u:"))
    i = (l - r) / r * u
    print("i = ")
i0 = n / n0 * i
u0 = u + i - i0
l0 = r * (1 + i0 / u0)
print(format(i0,".4f"))
print(format(u0,".4f"))
print(format(l0,".4f"))

这个以后有空应该还会再改叭,还需要实现的功能是输出为表格(好像是我一直没用用熟悉的输出重定向)和实现多个面的循环
不是计科相关专业的学生,技术生疏,请轻喷,以及欢迎大家一起交流鸭

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值