Я использую SmoothBivariateSpline
от scipy.interpolate
. Я пытаюсь получить автоматически определенные узлы в сплайне, и я вижу, что есть некоторые дубликаты.
import numpy as np
import scipy.interpolate
x = np.linspace(-5, 5, 11)
y = np.linspace(-5, 5, 11)
x, y = np.meshgrid(x, y)
z = 3*x**3 - 2*x*y**2 + x*y + 3 - y + y**4 + x**4 + y**7
spline = scipy.interpolate.SmoothBivariateSpline(x.flatten(), y.flatten(), z.flatten())
for knot in zip(*spline.get_knots()):
print(knot)
Выходные данные
(-5.0, -5.0)
(-5.0, -5.0)
(-5.0, -5.0)
(-5.0, -5.0)
(-3.000023368852655, -3.282617659864202)
(-3.983546159294322e-16, 0.04582687225604209)
(2.499999413217161, 3.4776057830551528)
(5.0, 5.0)
(5.0, 5.0)
(5.0, 5.0)
(5.0, 5.0)
Почему (-5.0, -5.0)
и (5.0, 5.0)
появляется несколько раз?