Advertisement
Guest User

Untitled

a guest
Nov 25th, 2018
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Julia 2.43 KB | None | 0 0
  1. # Przykład użycia: mbisekcji (x -> 2x - 4, 1.0, 3.0, 1/200000, 1/200000)
  2.  
  3. function mbisekcji(f::Function, a::Float64, b::Float64, delta::Float64, epsilon::Float64)
  4.     maxit = 100000
  5. # Funkcja rozwiązuje równanie f(x) = 0 metodą bisekcji
  6. #
  7. # Dane:
  8. # f - funkcja f(x) zadana jako anonimowa funkcja (ang. anonymous function)
  9. # a, b - konce przedziału poczatkowego
  10. # delta, epsilon - dokładności obliczeń
  11. #
  12. # Wyniki:
  13. # (r, v, it, err) - czwórka, gdzie
  14. #   r - przybliżenie pierwiastka równania f(x) = 0
  15. #   v - wartość f(r)
  16. #   it - liczba wykonanych iteracji,
  17. #   err - sygnalizacja błędu
  18. #         0 - brak błędu
  19. #         1 - funkcja nie zmienia znaku w przedziale [a,b]
  20. #         2 - zwiększ liczbę iteracji <maxit>
  21. #
  22. # Przykład użycia: mbisekcji(x -> 2x - 4, 1.0, 3.0, 1/200000, 1/200000)
  23. #
  24.  
  25.  
  26.  
  27. function mstycznych(f::Function, pf::Function, x0::Float64, delta::Float64, epsilon::Float64, maxit::Int)
  28. # Funkcja rozwiązuje równanie f(x) = 0 metodą Newtona
  29. #
  30. # Dane:
  31. # f, pf - funkcja f(x) oraz pochodna f'(x) zadane jako anonimowe funkcje (ang. anonymous function)
  32. # x0 - przybliżenie początkowe
  33. # delta, epsilon - dokładności obliczeń
  34. # maxit - maksymalna dopuszczalna liczba iteracji
  35. #
  36. # Wyniki:
  37. # (r, v, it, err) - czwórka, gdzie
  38. #   r - przybliżenie pierwiastka równania f(x) = 0
  39. #   v - wartość f(r)
  40. #   it - liczba wykonanych iteracji,
  41. #   err - sygnalizacja błędu
  42. #           0 - metoda zbieżna,
  43. #           1 - nie osiągnięto wymaganej dokładności w maxit iteracji,
  44. #           2 - pochodna bliska zeru
  45. #
  46. # Przykład użycia: mstycznych(x -> 2x - 4, x -> 2, 1.0, 1/200000, 1/200000, 1000)
  47. #
  48.  
  49.  
  50.  
  51. function msiecznych(f::Function, x0::Float64, x1::Float64, delta::Float64, epsilon::Float64, maxit::Int)
  52. # Funkcja rozwiązuje równanie f(x) = 0 metodą siecznych
  53. #
  54. # Dane:
  55. # f - funkcja f(x) zadana jako anonimowa funkcja (ang. anonymous function)
  56. # x0, x1 - przybliżenia początkowe,
  57. # delta, epsilon - dokładności obliczeń,
  58. # maxit - maksymalna dopuszczalna liczba iteracji,
  59. #
  60. # Wyniki:
  61. # (r, v, it, err) - czwórka, gdzie
  62. #   r - przybliżenie pierwiastka równania f(x) = 0
  63. #   v - wartość f(r)
  64. #   it - liczba wykonanych iteracji,
  65. #   err - sygnalizacja błędu
  66. #           0 - metoda zbieżna,
  67. #           1 - nie osiągnięto wymaganej dokładności w maxit iteracji
  68. #
  69. # Przykład użycia: msiecznych(x -> 2x - 4, 1.0, 3.0, 1/200000, 1/200000, 1000)
  70. #
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement