Advertisement
Guest User

RM labosi

a guest
Oct 22nd, 2019
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.91 KB | None | 0 0
  1. ### bisekccija
  2.  
  3.  
  4. import numpy as np
  5. import matplotlib.pyplot as plt
  6.  
  7. #Nije bitno za kolokvij nego za zavrsni
  8.  
  9. def f(x):
  10.     return 2*x**2 - 4
  11.  
  12. xl = float(input("Unesi lijev granicu:"))
  13. xd = float(input("desna"))
  14. epsilon = float(input("greska:"))
  15.  
  16. x = np.linspace(xl, xd, 100)
  17.  
  18. plt.plot(x, f(x), 'r-')
  19. plt.axhline(color='black')
  20.  
  21.  
  22. #bisekcija
  23.  
  24. maxiter = 100 #max broj iteracija
  25. it = 0
  26.  
  27. while it < maxiter:
  28.     xs = (xd + xl) / 2
  29.    
  30.     error = abs(f(xs))
  31.     print(error)
  32.    
  33.     if error < epsilon:
  34.         break
  35.    
  36.     elif f(xs) * f(xd) < 0:
  37.         xl = xs;
  38.     else:
  39.         xd = xs;
  40.        
  41.     it += 1
  42.        
  43.     #print(xs)
  44.            
  45. plt.plot(xs, 0, 'bo'a)
  46.  
  47. ### newton-rap metoda
  48. #Nije bitno za kolokvij nego za zavrsni
  49.  
  50. def f(x):
  51.     return 2*x**2 - 4
  52.  
  53. def f_der(x):
  54.     return 4*x
  55.  
  56. x1 = float(input("Unesi pocetnu tocku:"))
  57. epsilon = float(input("greska:"))
  58.  
  59.  
  60. X = np.array([x1])
  61.  
  62. maxit  =100
  63. it = 1
  64.  
  65. while it < maxit:
  66.     Xi = X[-1] - f(X[-1]) / f_der(X[-1])
  67.     X = np.append(X, Xi)
  68.    
  69.     error = np.abs(X[-1] - X[-2])
  70.    
  71.     if error < epsilon:
  72.         break
  73.    
  74.     it += 1
  75.    
  76. print(X[-1])
  77.  
  78. #bitno za kolokvij
  79. import numpy as np
  80. import matplotlib.pyplot as plt
  81.  
  82. import scipy.optimize as opt
  83.  
  84.  
  85. def f(x):
  86.     return 2*x**2 - 4
  87.  
  88. x0 = opt.fsolve(f, 2)
  89.  
  90. print(x0)
  91.  
  92. x0_bisekcija = opt.bisect(f, 0, 2) #nije bitno
  93.  
  94.  
  95. #######
  96. """
  97. temperatura u danu u prosincu modelirana je s:
  98.    cos((t/2.2) -5.5)*5
  99.    
  100.    kad je bilo 0 stupnjeva v?
  101. """
  102.  
  103. def temp(t):
  104.     return np.cos((t/2.2) -5.5)*5
  105.  
  106. X = np.linspace(0, 24, 100)
  107. plt.plot(X, temp(X), 'b-')
  108.  
  109. print(opt.fsolve(temp, [1, 8, 14, 20]))
  110.  
  111.  
  112. """
  113. model opisuje kolioko korisnika opterecuje server u jednom mejsecu
  114.  
  115. pronadi vrijeme kada je broj korisnika bio 1250
  116.  
  117. model je definiran kao 1250*sin(t-2) + 250*t + 1100
  118. nacrtaj nultocu kadaj je broj korsinika bio 1250
  119. """
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement