微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如果在 python 中出现警告,请做一些事情

如何解决如果在 python 中出现警告,请做一些事情

例如,在求解scipy中的线性系统时,如果在求解Ax = bA矩阵是病态的,则会引发以下警告:

LinAlgWarning: Ill-conditioned matrix (rcond=7.10124e-19): result may not be accurate. U = scipy.linalg.solve(self.K,self.F)

我考虑过从 A 矩阵计算 rcond 值,但它比让 scipy 和在大多数情况下 一个矩阵条件良好。

我想做类似的事情:

U = scipy.linalg.solve(K,F)

if LinalgWarning:
    K += np.identity(K.shape[0])

U = scipy.linalg.solve(K,F)

我尝试这样做:

try:
    U = scipy.linalg.solve(A,b)
except LinAlgWarning:
    A += np.identity(A.shape[0])
    U = scipy.linalg.solve(A,b)

但是没有用(警告仍然显示并且没有运行except语句)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。