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