Python计算矩阵乘向量,矩阵乘实数的一些小错误

Posted YEN_csdn

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python计算矩阵乘向量,矩阵乘实数的一些小错误相关的知识,希望对你有一定的参考价值。

计算:Ax-b
A: 2*2
x: 2*1
b: 2*1
so, Ax-b: 2*1

if __name__ == "__main__":
    A = np.array([[4.0, 1.0],
                  [1.0, 3.0]])
    b = np.array([[1.0], [2.0]])
    x_0 = np.array([[2.0], [1.0]])

    r_k = A * x_0 - b

    print(r_k)

错误!!!
修改:

if __name__ == "__main__":
    A= mat([[4.0, 1.0],
            [1.0, 3.0]])
    b = mat([[1.0], [2.0]])
    x_0 = mat([[2.0], [1.0]])

    r_k = A * x_0 - b

    print(r_k)

if __name__ == "__main__":
    A= mat([[4.0, 1.0],
            [1.0, 3.0]])
    b = mat([[1.0], [2.0]])
    x_k = mat([[2.0], [1.0]])

    p_k = -x_k  # 21列
    r_k = A * x_k - b # 21列
    alpha_k = (np.transpose(r_k) * r_k) / (np.transpose(p_k) * A * p_k) # 11-----------------------------------------------
    x_k = x_k + alpha_k * p_k #21列  !!!!这里报错
     -----------------------------------------------
    print(x_k)

修改:

if __name__ == "__main__":
    A= mat([[4.0, 1.0],
            [1.0, 3.0]])
    b = mat([[1.0], [2.0]])
    x_k = mat([[2.0], [1.0]])

    p_k = -x_k  # 2*1
    r_k = A * x_k - b # 2*1
    alpha_k = (np.transpose(r_k) * r_k) / (np.transpose(p_k) * A * p_k) # 1*1
    -----------------------------------------------
    x_k = x_k +   p_k *alpha_k
    -----------------------------------------------
    print(x_k)

以上是关于Python计算矩阵乘向量,矩阵乘实数的一些小错误的主要内容,如果未能解决你的问题,请参考以下文章

向量叉乘与叉乘矩阵

向量乘矩阵表示啥?

matlab怎么实现矩阵的向量乘 急!

2×3矩阵乘3×2矩阵要怎么算?

Python矩阵相乘

向量点乘叉乘、矩阵、OpenGL变化