gpt4 book ai didi

python - 用sellmeier方程计算蓝 gem 的折射率

转载 作者:太空宇宙 更新时间:2023-11-03 14:22:23 24 4
gpt4 key购买 nike

我正在尝试用 Sellmeier 方程计算蓝 gem 的折射率。我定义了方程,但现在我不知道如何输入纳米波长。请参阅下面的代码...

import numpy as np
import matplotlib.pyplot as plt

def nsell( lam ):

B1=1.023798
B2=1.058264
B3=5.280792
C1=0.0614482
C2=0.110700
C3=17.92656

lam=lam*10**-9

nsq = 1 + [B1] * lam**2 / (lam **2 - [C1])
nsq = nsq + [B2] * lam**2 / (lam **2 - [C2])
nsq = nsq + [B3] * lam**2 / (lam **2 - [C3])

return nsq**0.5


Lab=np.linspace(300,400,20)
test=nsell(Lab)
print(test)

我得到了奇怪的结果,或者我只是不明白它。

runfile('C:/Users/Kevin/Documents/Python Scripts/ligei.py', wdir='C:/Users/Kevin/Documents/Python Scripts')
[ 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1.
1. 1.]

最佳答案

您使用的系数似乎是基于微米的,因此您也必须使用微米来计算 lambda。只需使用

Lab=np.linspace(0.3,0.4,20)

因为看起来您想要 300 nm 到 400 nm,即 0.3 um 到 0.4 um。

或者,您可以将系数转换为您想要使用的单位。

此外,系数周围的方括号是不必要的。

关于python - 用sellmeier方程计算蓝 gem 的折射率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47855758/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com