我的问题是如何制作范德蒙矩阵。定义如下:在线性代数中,范德蒙矩阵(英语:Vandermonde matrix)是以 Alexandria -泰奥菲尔·范德蒙(英语:Alexandre-Théophile Vandermonde)命名的矩阵,是一个每行都有几何级数项的矩阵,即m × n矩阵。
我想做一个4*4的版本。
到目前为止,我已经定义了值,但只针对一行,如下所示
a=2
n=4
for a in range(n):
for i in range(n):
v.append(a**i)
v = np.array(v)
print(v)
我不知道如何缩放这个。请帮助!
3条答案
按热度按时间yvgpqqbh1#
给定长度为
m
的起始列a
,您可以创建一个范德蒙矩阵v
,其中包含n
列a**0
到a**(n-1)
,如下所示:n7taea2i2#
正如michael szczesny所建议的,你可以使用numpy.vander。但是这将不符合Wikipedia上的定义。
因此,您还必须使用numpy.fliplr:
这也可以在没有numpy的情况下使用嵌套列表解析来实现:
xj3cbfub3#