Advertisement
Guest User

Untitled

a guest
Dec 12th, 2019
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.12 KB | None | 0 0
  1. % zmienną jest r
  2. % H = 0.33/pi*r^2 , 0.33 to objętosc
  3. % materiał na ścianki i denka kosztuje tyle samo
  4.  
  5. x = 0.01:0.01:0.5;
  6. k = (sqrt(5)-1)/2; % wyklad s 5
  7. a = 0.01;
  8. b = 0.5;
  9. xL = b-k*(b-a);
  10. xR = a+k*(b-a);
  11. while (b-a)>1e-6
  12. if ((2*pi*xL^2 + 0.66/xL) < (2*pi*xR^2 + 0.66/xR))
  13. b = xR;
  14. xR = xL;
  15. xL = b-k*(b-a);
  16. else
  17. a = xL;
  18. xL = xR;
  19. xR = a+k*(b-a);
  20. end
  21. end
  22. r1 = (a+b)/2
  23. fun = (@(x) (2*pi*x^2 + 0.66/x));
  24.  
  25. figure(1);
  26. hold on
  27. plot(x, arrayfun(fun, x),'b'); %rysujemy wykres funkcji f dla arg x
  28. plot(r1, arrayfun(fun, r1) , 'r*')
  29.  
  30. % materiał na denka jest dwukrotnie droższy niż na ścianki
  31. k = (sqrt(5)-1)/2;
  32. a = 0.01;
  33. b = 0.5;
  34. xL = b-k*(b-a);
  35. xR = a+k*(b-a);
  36. while (b-a)>1e-6
  37. if ((4*pi*xL^2 + 0.66/xL) < (4*pi*xR^2 + 0.66/xR))
  38. b = xR;
  39. xR = xL;
  40. xL = b-k*(b-a);
  41. else
  42. a = xL;
  43. xL = xR;
  44. xR = a+k*(b-a);
  45. end
  46. end
  47. r2 = (a+b)/2
  48. fun2 = (@(x) (2*pi*x^2 + 0.66/x));
  49.  
  50. figure(2);
  51. hold on
  52. plot(x, arrayfun(fun2, x),'b');
  53. plot(r2, arrayfun(fun2, r2) , 'r*')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement