【问题标题】:I have a question about creating a N x N matrix for polynomial approximation我有一个关于为多项式逼近创建 N x N 矩阵的问题
【发布时间】:2021-05-15 00:47:24
【问题描述】:

我想根据以下关系求解系数 {c1,c2,...cn}:

其中 N×N 矩阵 B 是一组单项式基 {1,x,x^2,x^3,....x^n},fa(x) 是近似函数。如果我想遍历 n = [3,10,20,50] 并考虑到xj = 1/2*5-1/2*3*cos(j*pi/n)(切比雪夫点分布),我应该如何使用 NumPy 创建这样的矩阵 B?

【问题讨论】:

    标签: python numpy numerical-methods


    【解决方案1】:

    看起来 b 是函数,是 x 的幂

    b0 = 1
    b1 = x
    b2 = x^2
    b3 = x^3
    ...
    

    您正在尝试找到适合函数 f(x) 的最佳系数 c_n

    您只需选择一组 x 值。 比如说,你想在 -1 到 +1 的范围内进行近似。选择 xx 的值,例如 x0 = -1.0, x1 = -0.9 , -0.8 , -0.7 ..., 0.9 , 1.0

    x = np.arange(-1,1, 0.1)

    B 数组中的每一行是每个 xi 值的 x^n 值。

    你必须决定你想要你的多项式的幂。也许最简单的方法是使用“指数”创建一个 y 空间,例如从 x^0 到 x^5。 ' y=np.arange(0,6) '

    然后使用“网格技巧”

    y_mg , x_mg = np.meshgrid (y, x)
    
    #For each value of x_mg and y_mg, use numpy arithmetic
    B = numpy.power(x_mg , y_mg)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-05
      • 1970-01-01
      • 2011-06-01
      • 1970-01-01
      • 2017-03-05
      • 1970-01-01
      相关资源
      最近更新 更多