SymPy - класс функции

Пакет Sympy имеет класс Function, который определен в модуле sympy.core.function. Это базовый класс для всех прикладных математических функций, а также конструктор для неопределенных классов функций.

Следующие категории функций унаследованы от класса Function -

  • Функции для комплексного числа
  • Тригонометрические функции
  • Функции для целого числа
  • Комбинаторные функции
  • Прочие разные функции

Функции для комплексного числа

Этот набор функций определен в sympy.functions.elementary.complexes модуль.

re

Эта функция возвращает действительную часть выражения -

>>> from sympy import * 
>>> re(5+3*I)

Вывод для приведенного выше фрагмента кода приведен ниже -

5

>>> re(I)

Вывод для приведенного выше фрагмента кода -

0

Im

Эта функция возвращает мнимую часть выражения -

>>> im(5+3*I)

Вывод для приведенного выше фрагмента кода приведен ниже -

3

>>> im(I)

Вывод для приведенного выше фрагмента кода приведен ниже -

1

sign

Эта функция возвращает комплексный знак выражения.

Для реального выражения знак будет -

  • 1, если выражение положительное
  • 0, если выражение равно нулю
  • -1, если выражение отрицательное

Если выражение мнимое, возвращается знак -

  • I, если im (выражение) положительно
  • -I, если im (выражение) отрицательное
>>> sign(1.55), sign(-1), sign(S.Zero)

Вывод для приведенного выше фрагмента кода приведен ниже -

(1, -1, 0)

>>> sign (-3*I), sign(I*2)

Вывод для приведенного выше фрагмента кода приведен ниже -

(-I, I)

Abs

Эта функция возвращает абсолютное значение комплексного числа. Он определяется как расстояние между началом координат (0,0) и точкой (a, b) на комплексной плоскости. Эта функция является расширением встроенной функции abs () для приема символьных значений.

>>> Abs(2+3*I)

Вывод для приведенного выше фрагмента кода приведен ниже -

$\sqrt13$

conjugate

Эта функция возвращает сопряжение комплексного числа. Чтобы найти комплексное сопряжение, мы меняем знак мнимой части.

>>> conjugate(4+7*I)

После выполнения приведенного выше фрагмента кода вы получите следующий результат:

4 - 7i

Тригонометрические функции

SymPy имеет определения для всех тригонометрических соотношений - sin cos, tan и т. Д., А также его обратные аналоги, такие как asin, acos, atan и т. Д. Эти функции вычисляют соответствующее значение для заданного угла, выраженного в радианах.

>>> sin(pi/2), cos(pi/4), tan(pi/6)

Вывод для приведенного выше фрагмента кода приведен ниже -

(1, sqrt(2)/2, sqrt(3)/3)

>>> asin(1), acos(sqrt(2)/2), atan(sqrt(3)/3)

Вывод для приведенного выше фрагмента кода приведен ниже -

(pi/2, pi/4, pi/6)

Функции над целым числом

Это набор функций для выполнения различных операций с целым числом.

ceiling

Это одномерная функция, которая возвращает наименьшее целочисленное значение, не меньшее, чем его аргумент. В случае комплексных чисел потолок действительной и мнимой частей отдельно.

>>> ceiling(pi), ceiling(Rational(20,3)), ceiling(2.6+3.3*I)

Вывод для приведенного выше фрагмента кода приведен ниже -

(4, 7, 3 + 4*I)

floor

Эта функция возвращает наибольшее целочисленное значение, не превышающее ее аргумент. В случае комплексных чисел эта функция также использует отдельно действительную и мнимую части.

>>> floor(pi), floor(Rational(100,6)), floor(6.3-5.9*I)

Вывод для приведенного выше фрагмента кода приведен ниже -

(3, 16, 6 - 6*I)

frac

Эта функция представляет собой дробную часть x.

>>> frac(3.99), frac(Rational(10,3)), frac(10)

Вывод для приведенного выше фрагмента кода приведен ниже -

(0.990000000000000, 1/3, 0)

Комбинаторные функции

Комбинаторика - это область математики, занимающаяся проблемами выбора, расположения и работы в конечной или дискретной системе.

factorial

Факториал очень важен в комбинаторике, где он дает количество способов, которыми могут быть переставлены n объектов. Это символически обозначается как! Эта функция является реализацией функции факториала по неотрицательным целым числам, факториал отрицательного целого числа - комплексная бесконечность.

>>> x=Symbol('x') 
>>> factorial(x)

Вывод для приведенного выше фрагмента кода приведен ниже -

x!

>>> factorial(5)

Вывод для приведенного выше фрагмента кода приведен ниже -

120

>>> factorial(-1)

Вывод для приведенного выше фрагмента кода приведен ниже -

$\infty\backsim$

биномиальный

Эта функция определяет количество способов, которыми мы можем выбрать k элементов из набора n элементов.

>>> x,y=symbols('x y') 
>>> binomial(x,y)

Вывод для приведенного выше фрагмента кода приведен ниже -

$(\frac{x}{y})$

>>> binomial(4,2)

Вывод для приведенного выше фрагмента кода приведен ниже -

6

Строки треугольника Паскаля могут быть созданы с помощью биномиальной функции.

>>> for i in range(5): print ([binomial(i,j) for j in range(i+1)])

После выполнения приведенного выше фрагмента кода вы получите следующий результат:

[1]

[1, 1]

[1, 2, 1]

[1, 3, 3, 1]

[1, 4, 6, 4, 1]

fibonacci

Числа Фибоначчи - это целочисленная последовательность, определяемая начальными членами F0 = 0, F1 = 1 и двухчленным рекуррентным соотношением Fn = Fn − 1 + Fn − 2.

>>> [fibonacci(x) for x in range(10)]

Следующий результат получается после выполнения приведенного выше фрагмента кода -

[0, 1, 1, 2, 3, 5, 8, 13, 21, 34]

tribonacci

Числа Трибоначчи представляют собой целочисленную последовательность, определяемую начальными членами F0 = 0, F1 = 1, F2 = 1 и трехчленным рекуррентным соотношением Fn = Fn-1 + Fn-2 + Fn-3.

>>> tribonacci(5, Symbol('x'))

Приведенный выше фрагмент кода дает результат, эквивалентный приведенному ниже выражению -

$x^8 + 3x^5 + 3x^2$

>>> [tribonacci(x) for x in range(10)]

Следующий результат получается после выполнения приведенного выше фрагмента кода -

[0, 1, 1, 2, 4, 7, 13, 24, 44, 81]

Разные функции

Ниже приведен список некоторых часто используемых функций -

Min- Возвращает минимальное значение списка. Он назван Min, чтобы избежать конфликтов со встроенной функцией min.

Max- Возвращает максимальное значение списка. Он назван Max, чтобы избежать конфликтов со встроенной функцией max.

root - Возвращает корень n-й степени из x.

sqrt - Возвращает главный квадратный корень из x.

cbrt - Эта функция вычисляет главный кубический корень из x (сокращение для x ++ Rational (1,3)).

Ниже приведены примеры вышеуказанных различных функций и их соответствующих выходов.

>>> Min(pi,E)

e

>>> Max(5, Rational(11,2))

$\frac{11}{2}$

>>> root(7,Rational(1,2))

49

>>> sqrt(2)

$\sqrt2$

>>> cbrt(1000)

10