Ошибка Curve_fit - IndexError: допустимыми являются только целые числа, кусочки (`:`), многоточие (`...`), numpy.newaxis (`None`) и целочисленные или логические массивы - PullRequest
0 голосов
/ 22 ноября 2018

Попытка подобрать упрощенную кривую Блоха-Грюнайзена для удельных сопротивлений.Не лучший в Python, поэтому он немного грязный.

Кажется, что все работает "отлично" до кривой_fit, где я получаю сообщение об ошибке:

IndexError: только целые числа,Срезы (:), многоточие (...), numpy.newaxis (None) и целые или логические массивы являются допустимыми индексами

import numpy as np
import matplotlib.pyplot as plt
import scipy.integrate as sc
from scipy.optimize import curve_fit
import scipy.constants as spc
import scipy as spy
Cu_2000A=np.genfromtxt('Cu_2000A.txt')
R = Cu_2000A[:,0]
T = Cu_2000A[:,1]

ylist = []   
def Bloch1(T,k,debye):
    for Tval in np.nditer(T):
        yval = float((k*(Tval/debye)**5))
        ylist.append(yval)

    return ylist
xlist = []
def Integrate(debye):
    for Tval in np.nditer(T):
        xval =(sc.quad(lambda x: ((x**5)/(((np.exp(x))-1)*(1-(np.exp(-x))))), 0, (debye/(Tval))))
        xlist.append(float(xval[0]))

    return xlist
def Bloch(T, R0, k, debye):
    test = np.asarray(Bloch1(T, k, debye))
    test2 = np.asarray(Integrate(debye))

    return (R0 + (test*test2))



popt, pcov = curve_fit(Bloch, T, R [0.1, 1000, 350])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...