Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import numpy as np
- C = np.array([[14.7, 0.0635, 0.0765, 0.0896],
- [0.0452, 13.8, 0.0714, 0.0844],
- [0.04, 0.0531, 12.9, 0.0793],
- [0.0349, 0.0479, 0.0610, 12]])
- d = np.array([[20.9985], [22.4406], [23.5195], [24.2353]])
- def simple_iter(C, d, x, eps):
- k = 0
- n = C.shape[0]
- while (True):
- x_ = np.zeros(n)
- for i in range(n):
- x_[i] = d[i] / C[i][i]
- for j in range(n):
- if i != j:
- x_[i] -= C[i][j] / C[i][i] * x[j]
- k += 1
- if np.linalg.norm(x_ - x) < eps:
- return [x_, k]
- x = x_
- x = np.array([1, 1, 1, 1])
- ans = simple_iter(C, d, x, 1e-15)
- print(ans)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement