1

我有这个三次样条函数:

s(x) = 4 + k1*x + 2x^2 - (1/6)*x^3  for x in [0,1]
s(x) = 1 - (4/3)*(x-1) + k2*(x-1)^2 - (1/6) * (x-1)^3 for x in [1,2]
s(x) = 1 + k3*(x-2) + (x-2)^2 - (1/6) * (x-2)^3 for x in [2,3]

我想实现一个简单的函数,给这个函数,它确定系数 k1,k2 和 k3,但我不能这样做..

有人有想法吗?

4

1 回答 1

0

将 3 个函数表示为 s0(x)、s1(x) 和 s2(x),您可以展开 s1(x) 和 s2(x) 并收集 x^3、x^2、x 和常数项的系数。然后,你得到

s1(x)= 4 +k1*x+2*x^2-(1/6)*x^3
s2(x)= (5/2+k2)+(-11/6-2k2)*x+( k2+1/2)*x^2-(1/6)*x^3
s3(x)= .....(留给自己练习)

对于这三个函数都是三次多项式,它们应该是相同的。所以,你可以有

4 = 5/2 + k2
k1 = -11/6 - 2k2
2 = k2+1/2

从中可以得到 k1=-29/6, k2=3/2。

比较方程 s0(x) 和 s2(x),还可以得到 k3 = 7/6。

于 2015-11-11T20:49:43.623 回答