线性方程求解与桁架结构分析
1. 线性方程求解:Cholesky 方法
在求解线性方程组时,Cholesky 分解方法是一种高效的算法。它适用于对称正定矩阵,并且比其他 [L][U] 分解算法快两倍。
以下是 Cholesky 方法的核心代码:
_sum = 0.0
for j in range(i + 1, size):
u_ij = up_matrix.value_transposed_at(i, j)
x_j = solution.value_at(j)
_sum += u_ij * x_j
y_i = vector.value_at(i)
u_ii = up_matrix.value_transposed_at(i, i)
solution_val = (y_i - _sum) / u_ii
solution.set_value(solution_val, i)
return solution
为了确保代码的正确性,我们采用了测试驱动开发(TDD)的方法。将算法分解为多个小函数,并分别对这些子函数进行测试。以下是测试代码:
import unittest
from eqs.cholesky import lower_matrix_decomposition, \
solve_lower_sys, solve_upper_sys, cholesky_solve
from eqs.matrix import Matrix
from eqs.vector import
超级会员免费看
订阅专栏 解锁全文
20

被折叠的 条评论
为什么被折叠?



