Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- pub fn iterate(b: &Vec<f64>, a: &Vec<Vec<f64>>, prev: &Vec<f64>) -> (Vec<f64>, f64) {
- let n = b.len();
- let mut x = vec![0.0; n];
- let mut eps = vec![0.0; n];
- for i in 0..n {
- x[i] = b[i] + {
- let mut sum = 0.0;
- for j in 0..n {
- sum += a[i][j] * prev[j];
- }
- sum
- };
- eps[i] = (x[i]-prev[i]).abs();
- }
- //максимальная разность
- let mut max_eps = eps[0];
- for each in eps {
- if each > max_eps {
- max_eps = each;
- }
- }
- (x, max_eps)
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement