Advertisement
Guest User

Untitled

a guest
Oct 23rd, 2019
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.54 KB | None | 0 0
  1. function [x, iter] = ConjugateGradient(A, x_0, b)
  2. x = x_0
  3.  
  4. r_old = b - A*x
  5.  
  6. p = r_old
  7.  
  8. epsilon = 10^-8*norm(r_old)
  9.  
  10. N = [2^5, 2^6, 2^7, 2^8, 2^9, 2^10]
  11.  
  12. it_num = 0
  13. while norm(r_old) > epsilon
  14. alph = (transpose(r_old)*r_old)/(transpose(p)*A*p)
  15.  
  16. x = x + alph*p
  17. r_new = r_old - alph*A*p
  18. Beta = (transpose(r_new)*(r_new-r_old))/(transpose(r_old)*r_old)
  19. p = r_new + Beta*p
  20. r_old = r_new
  21. it_num = it_num + 1
  22. iter = it_num
  23. end
  24. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement