【发布时间】:2019-10-24 16:15:45
【问题描述】:
我有代码迭代 x 中的某个间隔并计算计算值与预期值 y 之间的差。
def find_alpha_max():
alpha=0
alphamax=1
alphamin=0
n=10
alphastep=(alphamax-alphamin)/n
data= np.zeros([n,2])
for i in range(1,len(data)):
alpha=i*alphastep
data[i,0] = alpha
data[i,1] = abs(wavelen(alpha)-121)
print(data)
def wavelen(alpha):
val1,val2= energy_levels(alpha)
transition= abs(val1-val2)
wavelength=(h*c/abs(transition*(1e-19)))/(1e-9)
return wavelength
这给出了输出:
[[ 0. 0. ]
[ 0.1 61.37844557]
[ 0.2 47.07247138]
[ 0.3 33.72835938]
[ 0.4 21.50950112]
[ 0.5 10.44535124]
[ 0.6 0.49201146]
[ 0.7 8.43091667]
[ 0.8 16.41859421]
[ 0.9 23.56862328]]
我想要做的是根据数组的 y 值从最小到最大对数组的顺序进行排序,这样我就可以获得一个可以用于数值最小化的 x 值。我该怎么做呢?
【问题讨论】:
-
您能否也将您的输入和输出作为示例?
-
请提供一些最小的例子来说明。
-
您的问题令人困惑。 “二维数组的 y 坐标”是什么意思?
-
抱歉我已经编辑了。希望这更清楚
标签: python numpy-ndarray