Advertisement
Guest User

Untitled

a guest
Apr 19th, 2018
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.21 KB | None | 0 0
  1. function [L,U]=f_gauss_doolittle(A)
  2. n=length(A);
  3. S=0;
  4. Sb=0;
  5. for k=1:n
  6. L(k,k)=1;
  7. for j=k:n
  8. for s=1:k-1
  9.  
  10. S=S+L(k,s)*U(s,j);
  11. endfor
  12. U(k,j)=A(k,j)-S;
  13. endfor
  14. for i=k+1:n
  15. for s=1:k-1
  16. Sb=Sb+(L(i,s)*U(s,k))/U(k,k);
  17. endfor
  18. L(i,k)=A(i,k)-Sb;
  19. endfor
  20. endfor
  21. endfunction
  22.  
  23.  
  24. function [x,Ur]=f_gauss(A,b)
  25. Ur=[A,b];
  26. n=length(b);
  27. for k=1:1:n-1;
  28. if A(k,k)==0
  29. error('Blad');
  30. endif
  31. for j=k+1:1:n+1
  32. for i=k+1:1:n
  33. Ur(i,j)=Ur(i,j)-(Ur(i,k))/(Ur(k,k))*Ur(k,j);
  34. endfor
  35. endfor
  36. endfor
  37. x=0;
  38. for i=n:-1:1;
  39. S=0;
  40. for j=i+1:1:n;
  41. S=S+Ur(i,j)*x(j);
  42. endfor
  43. x(i)=(Ur(i,n+1)-S)/(Ur(i,i));
  44. endfor
  45. endfunction
  46.  
  47.  
  48. function [x,Ur]=f_gauss(A,b)
  49. Ur=[A,b];
  50. n=length(b);
  51. for k=1:1:n-1;
  52. if A(k,k)==0
  53. error('Blad');
  54. endif
  55. for j=k+1:1:n+1
  56. for i=k+1:1:n
  57. Ur(i,j)=Ur(i,j)-(Ur(i,k))/(Ur(k,k))*Ur(k,j);
  58. endfor
  59. endfor
  60. endfor
  61. x=0;
  62. for i=n:-1:1;
  63. S=0;
  64. for j=i+1:1:n;
  65. S=S+Ur(i,j)*x(j);
  66. endfor
  67. x(i)=(Ur(i,n+1)-S)/(Ur(i,i));
  68. endfor
  69. endfunction
  70.  
  71.  
  72. A=[3,1,-1;-1,5,-1;2,4,8]
  73. b=[6;10;2]
  74. A\b
  75. [x,Ur]=f_gauss(A,b)
  76. [L,U]=lu(A)
  77. [L,U]=f_gauss_doolittle(A)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement