从用matlab求矩阵的1/2次方讲起(线性代数习题同济五版参考答案)

定理
求可逆矩阵P
矩阵的1/2次方_人工智能_creator123123的博客-CSDN博客
python 矩阵的(-1/2)次方?_Python_ICAOYS的搬砖日常-CSDN博客
我发觉这个求矩阵的1/2次方,本质上是在求相似对角化时的可逆矩阵。
给出代码

#求出一个满足B^2==A(A为实对称矩阵)的B,近似代替matlab中一行 B=A^(1/2) 求B的效果
import numpy as np
from numpy import linalg as la

# v 为特征值    P为特征向量
v, P = la.eig(A)
V = np.diag(v**(0.5))
B = P @ V @ la.inv(P)

成功案例
matlab

transfer_mat = cov^(1/2);

python

v, P = la.eig(cov)
V = np.diag(v**(0.5))
transfer_mat = P @ V @ la.inv(P)

matlab

python

一些相关又无关的概念

相关关键词:实对称矩阵的相似正交化,施密特正交化,矩阵奇异值分解。(奇异值分解的形式和这个形式也是非常的相像的)
python/sympy计算施密特正交化向量_Python_ouening的博客-CSDN博客
线性代数,矩阵论,离散数学的资料推荐黄正华的教学信息页面
强大的scipy.linalg包,用如下的方法引入,包含奇异值分解,QR分解,cholesky分解等等。

import numpy as np
from numpy import linalg as la
"""Lite version of scipy.linalg.

Notes
-----
This module is a lite version of the linalg.py module in SciPy which
contains high-level Python interface to the LAPACK library.  The lite
version only accesses the following LAPACK functions: dgesv, zgesv,
dgeev, zgeev, dgesdd, zgesdd, dgelsd, zgelsd, dsyevd, zheevd, dgetrf,
zgetrf, dpotrf, zpotrf, dgeqrf, zgeqrf, zungqr, dorgqr.
"""
from __future__ import division, absolute_import, print_function


__all__ = ['matrix_power', 'solve', 'tensorsolve', 'tensorinv', 'inv',
           'cholesky', 'eigvals', 'eigvalsh', 'pinv', 'slogdet', 'det',
           'svd', 'eig', 'eigh', 'lstsq', 'norm', 'qr', 'cond', 'matrix_rank',
           'LinAlgError', 'multi_dot']

正交矩阵
出现平方

线性代数资料推荐

武汉大学黄正华老师的线性代数资料很不错。还包括:线性代数 ( 同济五版 ) 习题参考答案,也可以在语雀下载来自黄志华老师的资料 · 语雀



线性代数同济大学第五版答案

posted @ 2020-03-20 17:47  lingr7  阅读(2904)  评论(0编辑  收藏  举报