use*_*468 1 matlab interpolation
我正在尝试使用matlab 构建vandermonde矩阵.
我的输入向量是
t = [ 1 2 3 4 ]'
Run Code Online (Sandbox Code Playgroud)
我使用vander函数的输出是:
ans =
1 1 1 1
8 4 2 1
27 9 3 1
64 16 4 1
Run Code Online (Sandbox Code Playgroud)
现在,如果我没有弄错的话,那个向量的范德蒙矩阵应该是:
1 1 1 1
1 2 4 8
1 3 9 27
1 4 16 64
Run Code Online (Sandbox Code Playgroud)
现在我才意识到我可以使用以下内容实现我想要的结果:
>> fliplr(vander(t))
ans =
1 1 1 1
1 2 4 8
1 3 9 27
1 4 16 64
Run Code Online (Sandbox Code Playgroud)
谢谢.
Heb*_*odo 11
维基百科和Mathworld同意你的看法.但是,MATLAB文档说:
A = vander(v)返回Vandermonde矩阵,其列是向量v的幂,即A(i,j)= v(i)^(nj),其中n = length(v).
我不知道为什么Mathworks这样做了.您可以使用它fliplr来达到预期的效果.