Advertisement
Guest User

Untitled

a guest
Oct 22nd, 2017
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.82 KB | None | 0 0
  1. % Modulis ir norm() vai abs()????
  2. %% 1.uzd Gausa metode, rref(2. 6. variants
  3. clear all
  4. clc,format compact
  5. A=[4,-4,4,7;4,8,-4,4;12,12,-4,15];
  6. B=[7;3;13];
  7. Ap=[A B];
  8. % 1.1
  9. Rangs=rank(Ap)
  10. % 1.2
  11. sol=sym(rref(Ap))
  12. x4=1;
  13. x3=1;
  14.  
  15. x1=sol(1,5)-sol(1,4)*x4-sol(1,3)*x3
  16. x2=sol(2,5)-sol(2,4)*x4-sol(2,3)*x3
  17.  
  18. % Kas ir partikul?ra atrisin?juma modulis? norma?
  19.  
  20. %% 1.uzd 1.variants
  21.  
  22. clear all
  23. clc,format compact
  24. A=[4,-4,4,7;4,8,-4,4;12,12,-4,15];
  25. B=[7;3;13];
  26. Ap=[A B];
  27. % 1.1
  28. Rangs=rank(Ap)
  29. % 1.2
  30. sol=sym(rref(Ap))
  31. x4=1;
  32.  
  33.  
  34. x1=sol(1,5)-sol(1,4)*x4
  35. x2=sol(2,5)-sol(2,4)*x4
  36. x3=sol(3,5)-sol(3,4)*x4
  37. %% 2.uzdevums jakobi metode 2. 6. variants
  38.  
  39. clear all, clc
  40. A=[14,-7,4;-7,15,-3;4,-3,16];
  41. B=[7;4;3];
  42. n=length(B(:,1));
  43. xtuv=[3;7;4];
  44. N=1;
  45. iter=0;
  46. solnorm=1;
  47. prnorm=zeros(1,2);
  48. while solnorm>0.01
  49. N=N+1;
  50. iter=iter+1;
  51. for m=1:n
  52. promrez=0;
  53. for mm=1:n
  54. if mm~=m
  55. promrez=promrez+xtuv(mm,N-1)*A(m,mm);
  56. end
  57. end
  58. xtuv(m,N)=(B(m,1)-promrez)/A(m,m);
  59. end
  60. solnorm=norm(xtuv(:,N-1)-xtuv(:,N));
  61.  
  62. prnorm(iter,:)=[iter,solnorm];
  63. end
  64. %2.1
  65. N
  66. %2.2
  67. xtuv
  68. x_tuvinajumi=xtuv(:,N)
  69. %2.3
  70. xsol=linsolve(A,B)
  71. %2.4
  72. kluda=xsol-x_tuvinajumi
  73.  
  74. prnorm
  75.  
  76. %% 2.uzdevums (1.variants)
  77.  
  78. clear all, clc
  79. A=[1,8,4;8,1,6;4,6,1];
  80. B=[3;5;1];
  81. n=length(B(:,1));
  82. xtuv=[1;3;5];
  83. N=1;
  84. iter=0;
  85. solnorm=1;
  86. prnorm=zeros(1,2);
  87. while iter<10
  88. N=N+1;
  89. if iter==0
  90. xtuv
  91. nesaiste=abs(A*xtuv-B);
  92. end
  93.  
  94.  
  95. iter=iter+1;
  96. for m=1:n
  97. promrez=0;
  98. for mm=1:n
  99. if mm~=m
  100. promrez=promrez+xtuv(mm,N-1)*A(m,mm);
  101. end
  102. end
  103. xtuv(m,N)=(B(m,1)-promrez)/A(m,m);
  104. end
  105.  
  106. solnorm=norm(xtuv(:,N-1)-xtuv(:,N));
  107.  
  108. prnorm(iter,:)=[iter,solnorm];
  109. end
  110. %2.1
  111. nesaiste
  112. %2.2
  113.  
  114. x_tuvinajumi=xtuv(:,iter)
  115. %2.3
  116.  
  117. nesaiste10=abs(A*x_tuvinajumi-B)
  118. %2.4
  119. xsol=linsolve(A,B)
  120. kluda=xsol-x_tuvinajumi
  121.  
  122. %prnorm
  123.  
  124.  
  125. %% 3.uzdevums (2. 6. variants)
  126. clear all
  127. A=[14,6,2,0;6,15,1,1,;1,1,16,8;0,1,8,17];
  128. b=[7;4;3;7];
  129. epsi=0.01;
  130. itermax=1000;
  131. n=length(b);
  132.  
  133. lambda=eig(A);
  134. tau=2/(max(lambda)+min(lambda)) % optimala tau vertiba
  135. k=0;
  136. x=[3;4;7;3];
  137. while norm(A*x-b) > epsi
  138. x=x+tau*(b-A*x);
  139. k=k+1;
  140. end
  141. % 3.1
  142. N=k
  143. %3.2
  144. x
  145. %3.3
  146. linsolve_result= linsolve(A,b)
  147. kl_modulis=abs(linsolve_result-x)
  148. %3.4
  149. konverge_ja_tau_ir_mazak_par=2/max(lambda)
  150.  
  151. %% 3.uzdevums (1.variants)
  152. clear all
  153. A=[3,-2,2,-4;-2,6,4,6;2,4,9,4;-4,6,4,12];
  154. b=[3;5;1;3];
  155. epsi=0.01;
  156. itermax=1000;
  157. n=length(b);
  158.  
  159. lambda=eig(A);
  160. tau=5;
  161. k=0;
  162. x=[1;5;3;1];
  163. while k < 10
  164. x=x+tau*(b-A*x);
  165. k=k+1;
  166.  
  167. end
  168. % 3.1
  169. abs(x)
  170. %3.2
  171. Nesaistes_modulis=abs(A*x-b) % Norma vai modulis?
  172. %3.3
  173. mazakais_konvergences_tau=2/max(lambda)
  174.  
  175. %3.4
  176. tau_optimal=2/(max(lambda)+min(lambda))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement