반응형
파이썬의 complex
클래스는 복소수를 표현하기 위해 사용됩니다. 복소수는 실수 부분과 허수 부분으로 구성되며, complex
클래스는 이러한 복소수를 효과적으로 다루는 데 필요한 기능을 제공합니다.
주요 특징 및 사용법
- 복소수 생성:
- 복소수는
a + bj
형태로 나타내며, 여기서a
는 실수 부분이고b
는 허수 부분입니다.j
는 허수 단위를 나타냅니다. - 복소수를 생성하는 두 가지 방법이 있습니다:
complex(a, b)
를 사용하여a + bj
복소수를 생성.- 직접
a + bj
형태로 입력.
- 복소수는
z1 = complex(3, 4) # 3 + 4j
z2 = 3 + 4j # 3 + 4j
- 복소수의 속성:
complex
객체는 두 가지 속성을 가지고 있습니다:.real
: 복소수의 실수 부분..imag
: 복소수의 허수 부분.
z = 3 + 4j
print(z.real) # 출력: 3.0
print(z.imag) # 출력: 4.0
- 복소수 연산:
- 파이썬의
complex
클래스는 덧셈, 뺄셈, 곱셈, 나눗셈을 포함한 다양한 산술 연산을 지원합니다. 이들 연산의 결과는 모두complex
객체로 반환됩니다.
- 파이썬의
z1 = 3 + 4j
z2 = 1 - 2j
add_result = z1 + z2 # (3 + 4j) + (1 - 2j) = 4 + 2j
sub_result = z1 - z2 # (3 + 4j) - (1 - 2j) = 2 + 6j
mul_result = z1 * z2 # (3 + 4j) * (1 - 2j) = 11 + 2j
div_result = z1 / z2 # (3 + 4j) / (1 - 2j) = -1 + 2j
print(add_result) # 출력: (4+2j)
print(sub_result) # 출력: (2+6j)
print(mul_result) # 출력: (11+2j)
print(div_result) # 출력: (-1+2j)
- 복소수의 절댓값:
- 복소수의 절댓값(크기)은 피타고라스 정리를 사용하여 계산됩니다.
abs()
함수를 사용하여 절댓값을 구할 수 있습니다.
- 복소수의 절댓값(크기)은 피타고라스 정리를 사용하여 계산됩니다.
z = 3 + 4j
magnitude = abs(z) # sqrt(3**2 + 4**2) = 5.0
print(magnitude) # 출력: 5.0
- 복소수의 복소켤레:
- 복소켤레는 복소수의 허수 부분의 부호를 바꾼 값입니다.
complex
객체의conjugate()
메서드를 사용하여 복소켤레를 구할 수 있습니다.
- 복소켤레는 복소수의 허수 부분의 부호를 바꾼 값입니다.
z = 3 + 4j
conjugate_z = z.conjugate() # 3 - 4j
print(conjugate_z) # 출력: (3-4j)
- 극좌표 변환:
- 복소수를 극좌표로 변환할 때
cmath
모듈을 사용할 수 있습니다. 이 모듈을 사용하여 복소수의 크기와 각도를 구할 수 있습니다.
- 복소수를 극좌표로 변환할 때
import cmath
z = 3 + 4j
r, theta = cmath.polar(z) # 극좌표 변환
print(r) # 출력: 5.0 (절댓값)
print(theta) # 출력: 0.9272952180016122 (라디안 단위의 각도)
# 극좌표를 직교좌표로 변환
z_rect = cmath.rect(r, theta)
print(z_rect) # 출력: (3.0000000000000004+3.9999999999999996j)
- 복소수의 응용:
- 복소수는 물리학, 공학, 신호 처리, 전기 회로 이론, 제어 이론 등에서 광범위하게 사용됩니다. 예를 들어, 교류 전기 회로에서 임피던스를 계산할 때 복소수를 사용합니다.
정리
파이썬의 complex
클래스는 복소수를 쉽고 효율적으로 다룰 수 있는 기능을 제공합니다. 복소수는 파이썬 내장 자료형 중 하나로, 수학적 및 과학적 계산에서 매우 유용하게 사용될 수 있습니다.
반응형
'언어 > Python' 카테고리의 다른 글
[ Python ] 원하는 만큼 난수를 만들어서 누적 횟수 확인해 보기 (0) | 2024.08.27 |
---|---|
[ Python ] Random 패키지 사용하기 (0) | 2024.08.26 |
[ Python ] 정밀한 계산에 Fraction으로 분수를 사용하기 (0) | 2024.08.25 |
[ Python ] 큰 수 계산에 Decimal 객체 사용하기 (0) | 2024.08.25 |
[ Python ] 정확하고 오차없는 10진수 연산 - Decimal 클래스 (0) | 2024.08.21 |