Advertisement
DMG

SOLE :: Jacobian function

DMG
Oct 30th, 2014
171
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MatLab 0.54 KB | None | 0 0
  1. function [x] = jacobian(A, b, x_1, max_error, max_iter)
  2.  
  3.     [rows, cols] = size(A);
  4.    
  5.     if rows ~= cols
  6.         return;
  7.     end
  8.    
  9.     x = x_1;
  10.     for counter = 1: max_iter
  11.         for i = 1:rows
  12.             sum = 0;
  13.             for j = 1:cols
  14.                 if i ~= j
  15.                     sum = sum + x_1(j)*A(i, j);
  16.                 end
  17.             end
  18.             x(i) = (b(i) - sum)/A(i, i);
  19.         end
  20.        
  21.         if abs(x-x_1) < max_error
  22.             break
  23.         end
  24.        
  25.         x_1 = x;
  26.     end
  27. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement