Số phức
Số phức có phần thực và phần ảo, được viết với i, căn bậc hai của −1. Trang này hướng dẫn viết số phức, thực hiện các phép tính với chúng, xác định môđun và argument, tìm căn bậc hai của số âm, cùng các hàm toán học chấp nhận giá trị phức.
Hãy dùng khi phương trình bậc hai không có nghiệm thực, khi làm việc với mạch điện xoay chiều hoặc tín hiệu, hoặc khi kiểm tra bài tập giải tích phức.
Viết các số phức
2 + 3i cho kết quả 2 + 3icomplex(3, -4) cho kết quả 3 - 4ii^2 cho kết quả -1Đặt i ngay sau một giá trị số cho phần ảo, như trong 3i hoặc 1.5i, hoặc sử dụng riêng i. complex(real, imaginary) xây dựng cùng một giá trị từ hai phần, điều này rất hữu ích khi các phần là tên: complex(resistance, reactance). Cả hai phần phải là số đơn giản không có đơn vị.
i chỉ mang nghĩa đơn vị ảo khi trong ghi chú chưa có tên nào khác là i. Khi bạn định nghĩa một tên hoặc đơn vị tùy chỉnh là i, định nghĩa đó sẽ được ưu tiên:
i = 52 + 3i cho kết quả 17complex(2, 3) cho kết quả 2 + 3iỞ đây, 3i trở thành 3 × 5 và dòng cho kết quả 17. Tên được dùng xuyên suốt các khối tính toán trong một ghi chú, nên i = … xuất hiện ở bất kỳ vị trí nào trước đó cũng có tác dụng tương tự. Tránh đặt tên là i trong ghi chú có dùng số phức. complex(2, 3) không dùng tên này nên vẫn hoạt động.
Số học
(2 + 3i) + (1 - 5i) cho kết quả 3 - 2i(1 + 2i) * (3 - i) cho kết quả 5 + 5i(2 + 3i) * (2 - 3i) cho kết quả 1310 / (3 + 4i) cho kết quả 1.2 - 1.6i(1 + i)^8 cho kết quả 16Phép cộng, trừ, nhân, chia và lũy thừa với số mũ nguyên đều được tính chính xác. Khi phần ảo của kết quả bằng không, như với (2 + 3i) * (2 - 3i), kết quả hiển thị như số thông thường. Hãy đặt mỗi số phức trong ngoặc khi nhân hoặc chia, để (2 + 3i) * (2 - 3i) không bị hiểu thành 2 + (3i * 2) - 3i.
Các phần của một giá trị số phức
z = 3 + 4ireal(z) cho kết quả 3imag(z) cho kết quả 4conj(z) cho kết quả 3 - 4iabs(z) cho kết quả 5arg(1 + i) cho kết quả 0.7853981634arg(1 + i) rad in degrees cho kết quả 45°| Hàm | Cho |
|---|---|
real(z) |
Phần thực |
imag(z) |
Phần ảo, dưới dạng số thuần túy |
conj(z) |
Liên hợp phức: cùng một phần thực, phần ảo với dấu của nó bị lật |
abs(z) |
Mô đun: khoảng cách từ số không |
arg(z) |
Acgumen: góc tính từ nửa trục thực dương, theo radian |
arg trả về một số radian đơn giản giữa −π và π. Để xem nó theo độ, hãy đánh dấu nó là radian và chuyển đổi, như ở dòng cuối cùng. Để đi theo cách khác, từ mô đun và góc trở lại một giá trị số phức, sử dụng exp: 2 * exp(i * pi / 3) là 1 + 1.7320508076i.
Căn bậc hai của các số âm
Căn bậc hai của một giá trị số âm thông thường là một phép tính số thực, vì vậy sqrt(-16) hiển thị một lỗi cho bạn biết phải viết gì thay thế: Error: imaginary number. For a complex answer, write sqrt(-16 + 0i) Để yêu cầu căn phức, hãy viết giá trị số dưới dạng phức: thêm 0i, hoặc sử dụng complex(…, 0)
sqrt(-16 + 0i) cho kết quả 4isqrt(complex(-16, 0)) cho kết quả 4isqrt(3 + 4i) cho kết quả 2 + isqrt(2i) cho kết quả 1 + isqrt trả về căn chính, có phần thực dương (hoặc phần ảo dương nếu lấy căn của số âm). Căn bậc hai còn lại là số đối của căn này.
Giá trị bạn viết dưới dạng số phức vẫn được giữ là số phức, kể cả khi phần ảo bằng không. Bạn có thể gán giá trị đó cho một tên hoặc tiếp tục tính toán với nó: sau x = -16 + 0i, sqrt(x) bằng 4i, dù x hiển thị là -16.
Nhờ vậy, công thức nghiệm phương trình bậc hai dùng được cho mọi phương trình bậc hai:
# Roots of x^2 + 2x + 5 = 0a = 1b = 2c = 5disc = b^2 - 4*a*c cho kết quả -16(-b + sqrt(disc + 0i)) / (2*a) cho kết quả -1 + 2i(-b - sqrt(disc + 0i)) / (2*a) cho kết quả -1 - 2iCăn bậc ba cũng tuân theo quy tắc căn chính, nên kết quả với số âm có thể khiến bạn bất ngờ:
cbrt(-8) cho kết quả -2cbrt(-8 + 0i) cho kết quả 1 + 1.7320508076iCả hai đều là căn bậc ba của −8. Phiên bản thực cho căn thực; phiên bản phức cho căn phức chính.
Các hàm của một giá trị số phức
exp(i * pi) cho kết quả -1ln(-1 + 0i) cho kết quả 3.1415926536ii^i cho kết quả 0.2078795764cos(i) cho kết quả 1.5430806348sinh(i) cho kết quả 0.8414709848i2^i cho kết quả 0.7692389014 + 0.6389612763iCác hàm sau chấp nhận giá trị phức:
sin,cos,tanvà các hàm ngược của chúng:asin,acos,atansinh,cosh,tanhvà các hàm ngược của chúng:asinh,acosh,atanhexp,ln,log(hoặclog10),log2,sqrtvàcbrt- Lũy thừa với số mũ phân số hoặc số phức, chẳng hạn
i^0.5hoặc2^i
Các hàm dùng số dấu phẩy động nhị phân, nên kết quả là giá trị gần đúng. Phần sai số làm tròn quá nhỏ để có ý nghĩa được hiển thị là 0; vì vậy exp(i * pi) hiển thị −1, đúng như bạn mong đợi từ sách giáo khoa. Giá trị được lưu vẫn giữ mọi chữ số, nên khi so sánh các kết quả này, hãy kiểm tra hiệu có đủ nhỏ hay không, như abs(exp(i * pi) + 1) < 1e-9, thay vì dùng ==.
Mỗi hàm trả về một kết quả duy nhất từ nhánh chính. Một số phức có vô số logarit và nhiều căn; bạn sẽ nhận được giá trị chính theo quy ước. Giống như sqrt, đầu vào thực vẫn được xử lý trong miền số thực: ln(-1) và log(-100) báo lỗi số ảo, kèm dạng số phức để thử; còn ln(-1 + 0i) cho πi. Lấy logarit của không sẽ gây lỗi.
Các hàm chỉ có ý nghĩa với số thực, như floor và round, không chấp nhận giá trị phức.
So sánh các số phức
2 + 3i == complex(2, 3) cho kết quả true2 + 3i != 2 - 3i cho kết quả truecomplex(3, 0) >= 3 cho kết quả trueabs(3 + 4i) > abs(1 + 2i) cho kết quả true== và != dùng được với mọi giá trị phức. <, <=, > và >= chỉ dùng được khi phần ảo của cả hai vế đều bằng không, vì số phức không có thứ tự tự nhiên: i < 2 gây lỗi. Để so sánh độ lớn, hãy so sánh môđun bằng abs, như ở dòng cuối. Không thể sắp xếp các số phức theo thứ tự.
Các quy tắc đầy đủ nằm trong tài liệu tham khảo toán học nâng cao.
Kết hợp các phần
Đây là cách kiểm tra một bài toán mạch điện xoay chiều: điện trở 30 Ω mắc nối tiếp với cuộn cảm có cảm kháng 40 Ω, dùng nguồn 10 V:
# Series circuit: 30 Ω resistor, 40 Ω reactance, 10 V supplyresistance = 30reactance = 40z = complex(resistance, reactance) cho kết quả 30 + 40iabs(z) cho kết quả 50current = 10 / z cho kết quả 0.12 - 0.16iabs(current) cho kết quả 0.2arg(z) rad in degrees to 1 dp cho kết quả 53.1°Trở kháng là 30 + 40i, có độ lớn 50 Ω, nên dòng điện bằng 0,2 A và trễ pha khoảng 53,1° so với điện áp. Các kỹ sư thường dùng j cho đơn vị ảo; trong Varlig, đơn vị này luôn là i. Ôm, vôn và ampe được ghi trong phần chú thích, vì các thành phần của số phức không thể kèm đơn vị.