Page 219 - 6734
P. 219

в  аналітичній  (символьній)  формі  на  відміну  від  чисельних
           обчислень  в  SciPy  [14,  25,  31].  Її  можна  розглядати  як  вільну
           альтернативу  системам  символьної  математики  Maple,  Mathcad,
           Mathematica.   Для   прикладу    SymPy    дозволяє   інтегрувати,
           диференціювати,  спрощувати  вирази,  розв’язувати  рівняння  у
           символьній формі.
           from sympy import *
           x,y,lamda=symbols('x y lamda') # визначити змінні
           expr=x+y # вираз
           expr2=expr+x # вираз
           print expr2.subs(y,2) # вираз шляхом підстановки y=2
           print srepr(expr2) # низькорівневе представлення
           виразу
           print expr2.args # кортеж усіх складових виразу
           print expr2.atoms() # атоми виразу
           print expr2.atoms(Symbol) # атоми (типу Symbol)
           виразу
           print expr2.subs([(x,5),(y,2)]).evalf() # підставити
           у вираз і обчислити
           #print expr2.subs({x:5, y:2}).evalf() # або так
           #print expr2.evalf(subs={x:5, y:2}) # або так
           #print N(expr2, subs={x:5, y:2}) # або так
           print sympify("x**2-1/2") # перетворити рядок у вираз
           SymPy
           expr3=sin(x) # вираз
           f=lambdify(x, expr3,"math") # функція для швидкого
           розрахунку числових значень. Третім аргументом може
           бути "math" або "numpy" або, наприклад, {"sin":mysin}
           print f(0.1) # числове значення

           expr4=Integral(sqrt(1/x), x) # вираз-інтеграл
           pprint(expr4, use_unicode=False) # виведення в
           Unicode (True) або ASCII (False). Для Unicode
           використовуйте для виведення IPython QTConsole або

                                         218
   214   215   216   217   218   219   220   221   222   223   224