Advertisement
dtroonn

Untitled

Dec 7th, 2019
132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.14 KB | None | 0 0
  1. from sympy import *
  2. init_printing()
  3. import matplotlib.pyplot as plt
  4. import numpy as np
  5. k=Symbol('k')
  6. m=tan(k)
  7. def znach(u):
  8.     b=tan(u)
  9.     return b
  10. u=float(input('Введите аргумент: '))
  11. print(f'Наше значение функции в точке х = {u} равно {znach(u)}')
  12. n=1
  13. z=tan(0)
  14. def f(x):
  15.     global z
  16.     global n
  17.     dx=diff(m,k,n)
  18.     ddx=lambdify(k,dx)
  19.     z+=(ddx(0)*(x**n))/factorial(n)
  20.     return z
  21. while True:
  22.     if abs(z-tan(u))<=0.0001:
  23.         break
  24.     f(u)
  25.     n+=1
  26. print(f'Количество производных для ряда Тейлора= {n},приближенное значение нашей функции = {z}')
  27. print(f'Наш ряд тейлора в точке х = {u}: ')
  28. x=Symbol('x')
  29. print(tan(x).series(x,u,n))
  30. tan_f=tan(x).series(x,0,n).removeO()
  31. tan_func=lambdify(x,tan_f)
  32. x_points=np.linspace(-1.5,1.5,100)
  33. plt.plot(x_points,[tan_func(i) for i in x_points],'r--',label=f'Наша приближенная функция для х = {u}')
  34. y=np.tan(x_points)
  35. plt.plot(x_points,y,color='green',label='y=tan(x)')
  36. plt.grid(color='purple')
  37. plt.legend(loc='upper left')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement