SymPy-함수 클래스

Sympy 패키지에는 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
  • expression이 0이면 0
  • 식이 음수이면 -1

식이 허수이면 반환되는 부호는 다음과 같습니다.

  • im (expression)이 양수이면 I
  • -I im (expression)이 음수이면
>>> 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$

이항식

이 함수는 n 개의 요소 집합에서 k 개의 요소를 선택할 수있는 여러 가지 방법입니다.

>>> 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 및 2 항 반복 관계 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 및 3 항 반복 관계 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 − x의 n 번째 루트를 반환합니다.

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