неподдерживаемые типы операндов для ** или pow (): 'list' и 'int' - PullRequest
0 голосов
/ 09 мая 2020
def radiance(l,T):
    l=l*(10**(-10))
    const=2*h*pi*(c**2)
    const2=(h*c)/(k*T)
    d=expo(const2/l)-1
    f=const/(d*(l**5))
    return f*10**11

def colour(T):
    color=(-1)*2.5*math.log(radiance(4400,T)/radiance(5500,T))
    return color

t=numpy.arange(10,1000)
plt.plot(t,colour(t)
plt.show()

теперь я знаю, что не могу передать список в функцию цвета выше. но он работает, когда я передаю массив numpy функции сияния, это дает мне правильный график. однако, когда я передаю массив t функции цвета, он сообщает мне, что ошибка связана с функцией сияния, которая сбивает меня с толку.

<ipython-input-105-0025fb9b0ac1> in radiance(l, T)
      1 def radiance(l,T):
      2     l=l*(10**(-`enter code here`10))
----> 3     const=2*h*pi*(c**2)
      4     const2=(h*c)/(k*T)
      5     d=expo(const2/l)-1

Я попытался векторизовать вторую функцию, но получил ту же ошибку

...