двоичные операции между экземплярами UTPM и массивами объектов не поддерживаются - PullRequest
0 голосов
/ 06 сентября 2018

Я делаю примерку наименьших квадратов в python. И я получил сообщение об ошибке «NotImplementedError: бинарные операции между экземплярами UTPM и массивами объектов не поддерживаются». Я не могу понять, что здесь происходит.

Мой код:

from scipy import integrate
from scipy import optimize
import numpy as np
from math import *
import matplotlib.pyplot as plt
import algopy #pip install algopy

R = 8.314 # J/mol/K
a = np.array([1,2,3,4,5])
da2dt = np.array([2,6,4,6,7])
def reaction_rate(p,a):
    T = np.array([10,20,30,40,50])
    return p[0] * np.exp(- p[1]/R/T) * (1 - a)**p[2]

def errfunc(p,a,da2dt):
    return reaction_rate(p,a) - da2dt

def jac_errfunc(p,a,da2dt):
    ap = algopy.UTPM.init_jacobian(p) 
    return algopy.UTPM.extract_jacobian(errfunc(ap, a, da2dt)) 

guess = np.array([1e8,1e4,1.0])
print(guess)
result = optimize.leastsq(errfunc, guess, args=(a, da2dt), Dfun = jac_errfunc, full_output=1)

Спасибо за помощь заранее!

Лучший, Jing

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...