Найти минимум 2-мерной интерполяции - PullRequest
0 голосов
/ 04 мая 2018

Я пытаюсь найти минимум двухмерной интерполяции. Я действительно застрял при попытке найти способ надлежащим образом передать данные оптимизатору,

вот код, который у меня есть:

import scipy
from scipy.interpolate import interp2d
a_ca_energy_interp = interp2d(a, c_a, Energy)

def run_2d_params(params, func):
    a, b = params
    return func(a, b)

scipy.optimize.fmin(run_2d_params, np.array([1.60,6.075]),
                    args=a_ca_energy_interp)

Что выдает ошибку:

TypeError: can only concatenate tuple (not "interp2d") to tuple

1 Ответ

0 голосов
/ 04 мая 2018

args должен быть кортежем, даже если это только один аргумент:

scipy.optimize.fmin(run_2d_params, np.array([1.60,6.075]),
                    args=(a_ca_energy_interp, ))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...