Advertisement
szymcio93

townini999999

Dec 9th, 2014
167
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.51 KB | None | 0 0
  1. close all;
  2. clear all;
  3. A=1;
  4. B=5;
  5. a=A;
  6. b=B;
  7. c=(a+b)/2;
  8. i=0;
  9. iter = 5;
  10. cb=0;
  11. % while(sum(S) ~= sum(T))
  12. inc = 1;
  13. while(inc<iter)
  14. i = i+1;
  15. if sin(a)*sin(c) < 0
  16. b = c;
  17. else
  18. a = c;
  19. end
  20. c = (a+b)/2;
  21. cb(inc) = c;
  22. inc = inc +1;
  23. end
  24. [c i]
  25.  
  26. % clear all
  27. % close all
  28. a = A;
  29. b = B;
  30. c = b - (sin(b)*(b-a))/(sin(b)-sin(a));
  31. i=0;
  32. % while(sum(S) ~= sum(T))
  33. inc = 1;
  34. while( inc <iter)
  35. i = i+1;
  36. if sin(a)*sin(c) < 0
  37. b = c;
  38. else
  39. a = c;
  40. end
  41. c = b - (sin(b)*(b-a))/(sin(b)-sin(a));
  42. cn(inc) = c;
  43. inc = inc +1;
  44. end
  45. [c i]
  46.  
  47. % clear all
  48. % close all
  49. a = A;
  50. b = B;
  51. c = b - (sin(b)*(b-a))/(sin(b)-sin(a));
  52. i=0;
  53. % while(sum(S) ~= sum(T))
  54. inc = 1;
  55. while(inc <iter)
  56. i = i+1;
  57. if abs(c -a) < abs(c-b)
  58. b = c;
  59. else
  60. a = c;
  61. end
  62. c = b - (sin(b)*(b-a))/(sin(b)-sin(a));
  63. bs2(inc) = c;
  64. inc = inc +1;
  65. end
  66. [b i]
  67.  
  68. % clear all
  69. % close all
  70. pk = (A+B)/2; %???????????????????
  71. pk = pk - sin(pk)/cos(pk);
  72. i=0;
  73. inc=1;
  74. % while(sum(S) ~= sum(T))
  75. while(inc <iter)
  76. pk = pk - sin(pk)/cos(pk);
  77. bn(inc) = c;
  78. inc = inc +1;
  79. i=i+1;
  80. end
  81. [pk i]
  82.  
  83.  
  84. % clear all
  85. % close all
  86. delta = (B-A)/10;
  87. pk2 = B;
  88. pk1 = (A+B)/2;%B-delta;
  89. pk = A;%B-2*delta;
  90. f=sin(pk);
  91. f1=sin(pk1);
  92. f2=sin(pk2);
  93. i=0;
  94. inc=1;
  95. % while(sum(S) ~= sum(T))
  96. while(inc < iter)
  97. i=i+1;
  98. tmp = pk*f2*f1/((f-f2)*(f-f1)) + pk1*f2*f/((f1-f2)*(f1-f)) + pk2*f*f1/((f2-f1)*(f2-f));
  99. pk2 = pk1;
  100. pk1 = pk;
  101. pk = tmp
  102. f=sin(pk);
  103. f1=sin(pk1);
  104. f2=sin(pk2);
  105. oik(inc) = tmp;
  106. inc=inc + 1;
  107. end
  108. [pk i]
  109. it=iter-1;
  110. plot(1:it,cb, 1:it,cn,1:it,bs2,1:it,bn,1:it,oik);
  111. grid on, legend('Bisekcja','Regula-falsi','Siecznych', 'Newtona-Raphsona', 'Odwrotna kwadratowa');
  112.  
  113.  
  114. -------------------------------------------------------------------------------------------
  115. 222222222222222222222
  116.  
  117. nrit = 10;
  118. x=2;
  119. pk = x/2;
  120. for i=1:nrit
  121. if pk*pk ~= x
  122. pk = pk - (pk.*pk-x)/(2*pk);
  123. end
  124. end
  125. pk
  126.  
  127. nrit = 400;
  128. x=0.5;
  129. pk = eps;
  130. for i=1:nrit
  131. if pk*x ~= 1
  132. pk = pk - x*pk*pk + pk;
  133. end
  134. end
  135. pk
  136.  
  137. ------------------------------------------------------------------------------------------------
  138. 3333333333333333333333
  139.  
  140. function [ ] = lab6_1( )
  141. close all
  142. clear all
  143. %UNTITLED Summary of this function goes here
  144. % Detailed explanation goes here
  145. load('pozycje.txt');
  146. tt = pozycje(:, 1);
  147. xx = pozycje(:, 2);
  148. yy = pozycje(:, 3);
  149. hh = pozycje(:, 4);
  150. dd = pozycje(:, 5);
  151. d2=0
  152. for i = 1:length(xx)-1
  153. x1 = xx(i+1);
  154. x0 = xx(i);
  155. y1 = yy(i+1);
  156. y0 = yy(i);
  157. h1 = hh(i+1);
  158. h0 = hh(i);
  159. t1 = tt(i+1);
  160. t0 = tt(i);
  161.  
  162. fi1 = x0 * pi/180;
  163. fi2 = x1 * pi/180;
  164. dfi = (x1-x0)*pi/180;
  165. dl = (y1-y0)*pi/180;
  166. a_ = (sin(dfi/2))^2 + cos(fi1)*cos(fi2)*(sin(dl/2))^2;
  167. c = 2*atan2(sqrt(a_), sqrt(1-a_));
  168. d = sqrt((c*6371000)^2 - ((h1-h0))^2);
  169.  
  170. vt(i) = (t1 - t0)/1000;
  171. v(i) = d/(vt(i));
  172. end
  173.  
  174. for i=1:length(v)-1
  175. a(i) = (v(i+1)-v(i))/vt(i+1);
  176. end
  177. v=real(v);
  178. a=real(a);
  179.  
  180. for i=3:length(v)-2
  181. v2(i) = (v(i-2)-8*v(i-1)+8*v(i+1)+v(i+1))/12;
  182. a2(i) = (a(i-2)-8*a(i-1)+8*a(i+1)+a(i+1))/12;
  183. end
  184.  
  185. hold on
  186. T = tt(3:length(tt)-1);
  187. A = real(a2);
  188. plot(T, A)
  189. hold off
  190. up = 0;
  191. down = 0;
  192. last = 0;
  193. for i = 1:length(A)
  194. if A(i)>0 && last <= 0
  195. up = up +1;
  196. last = 1;
  197. elseif A(i)<0 && last >= 0
  198. down = down + 1;
  199. last = -1;
  200. end
  201. end
  202. [up down]
  203.  
  204. diff(A)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement