Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Menentukan templat complex
kelas kontainer dan templat pendukungnya.
Persyaratan
Header: <kompleks>
Namespace: std
Keterangan
Bilangan kompleks adalah pasangan bilangan riil yang diurutkan. Dalam istilah geometris murni, bidang kompleks adalah bidang dua dimensi nyata. Kualitas khusus dari bidang kompleks yang membedakannya dari bidang nyata adalah karena memiliki struktur aljabar tambahan. Struktur aljabar ini memiliki dua operasi mendasar:
Tambahan, didefinisikan sebagai (a, b) + (c, d) = (a + c, b + d)
Perkalian, didefinisikan sebagai (a, b) * (c, d) = (ac - bd, ad + bc)
Kumpulan bilangan kompleks dengan operasi penambahan kompleks dan perkalian kompleks adalah bidang dalam arti aljabar standar:
Operasi penambahan dan perkalian bersifat komutatif dan asosiatif dan perkalian mendistribusikan lebih dari penambahan persis seperti halnya dengan penambahan dan perkalian nyata pada bidang bilangan riil.
Bilangan kompleks (0, 0) adalah identitas aditif dan (1, 0) adalah identitas multiplikatif.
Inversi aditif untuk bilangan kompleks (a, b) adalah (-a, -b), dan inversi multiplikatif untuk semua angka kompleks tersebut kecuali (0, 0) adalah
(a/(a2 + b2), -b/(a2 + b2))
Dengan mewakili bilangan kompleks z = (a, b) dalam bentuk z = a + bi, di mana i2 = -1, aturan untuk aljabar kumpulan bilangan riil dapat diterapkan ke kumpulan bilangan kompleks dan komponennya. Contohnya:
(1 + 2i) * (2 + 3i) = 1 * (2 + 3i) + 2i * (2 + 3i) = (2 + 3i) + (4i + 6i2) = (2 - 6) + (3 + 4)i = -4 + 7 i
Sistem bilangan kompleks adalah bidang, tetapi bukan bidang yang diurutkan. Tidak ada pengurutan bilangan kompleks karena ada untuk bidang bilangan riil dan subsetnya, sehingga ketidaksetaraan tidak dapat diterapkan pada angka kompleks karena ke angka riil.
Ada tiga bentuk umum yang mewakili bilangan kompleks z:
Kartesius: z = a bi +
Polar: z = r (cos p + i sin p)
Eksponensial: z = r * e ip
Istilah yang digunakan dalam representasi standar dari bilangan kompleks ini disebut sebagai berikut:
Komponen Kartesius nyata atau bagian nyata a.
Komponen Kartesius imajiner atau bagian imajiner b.
Modulus atau nilai absolut dari bilangan kompleks r.
Argumen atau sudut fase p dalam radian.
Kecuali ditentukan lain, fungsi yang dapat mengembalikan beberapa nilai diperlukan untuk mengembalikan nilai utama untuk argumen mereka yang lebih besar dari -π dan kurang dari atau sama dengan +π untuk membuatnya tetap bernilai tunggal. Semua sudut harus diekspresikan dalam radian, di mana ada 2π radian (360 derajat) dalam lingkaran.
Anggota
Fungsi
Nama | Deskripsi |
---|---|
abs |
Menghitung modulus bilangan kompleks. |
acos |
|
acosh |
|
arg |
Mengekstrak argumen dari bilangan kompleks. |
asin |
|
asinh |
|
atan |
|
atanh |
|
conj |
Mengembalikan konjugasi kompleks dari bilangan kompleks. |
cos |
Mengembalikan kosinus bilangan kompleks. |
cosh |
Mengembalikan kosinus hiperbolik dari bilangan kompleks. |
exp |
Mengembalikan fungsi eksponensial dari bilangan kompleks. |
imag |
Mengekstrak komponen imajiner dari bilangan kompleks. |
log |
Mengembalikan logaritma alami dari bilangan kompleks. |
log10 |
Mengembalikan logaritma basis 10 dari bilangan kompleks. |
norm |
Mengekstrak norma bilangan kompleks. |
polar |
Mengembalikan bilangan kompleks, yang sesuai dengan modulus dan argumen tertentu, dalam bentuk Kartesius. |
pow |
Mengevaluasi bilangan kompleks yang diperoleh dengan menaikkan basis yang merupakan bilangan kompleks ke kekuatan bilangan kompleks lainnya. |
proj |
|
real |
Mengekstrak komponen riil dari bilangan kompleks. |
sin |
Mengembalikan sinus bilangan kompleks. |
sinh |
Mengembalikan sinus hiperbolik dari bilangan kompleks. |
sqrt |
Mengembalikan akar kuadrat dari bilangan kompleks. |
tan |
Mengembalikan tangen bilangan kompleks. |
tanh | Mengembalikan tangen hiperbolik dari bilangan kompleks. |
Operator
Nama | Deskripsi |
---|---|
operator!= |
Pengujian untuk ketidaksetaraan antara dua bilangan kompleks, satu atau keduanya mungkin termasuk dalam subset jenis untuk bagian nyata dan imajiner. |
operator* |
Mengalikan dua bilangan kompleks, satu atau keduanya mungkin termasuk dalam subset jenis untuk bagian nyata dan imajiner. |
operator+ |
Menambahkan dua bilangan kompleks, satu atau keduanya mungkin termasuk dalam subset jenis untuk bagian nyata dan imajiner. |
operator- |
Mengurangi dua angka kompleks, satu atau keduanya mungkin termasuk dalam subset jenis untuk bagian nyata dan imajiner. |
operator/ |
Membagi dua bilangan kompleks, satu atau keduanya mungkin termasuk dalam subset jenis untuk bagian nyata dan imajiner. |
operator<< |
Fungsi templat yang menyisipkan bilangan kompleks ke dalam aliran output. |
operator== |
Pengujian untuk kesetaraan antara dua bilangan kompleks, satu atau keduanya mungkin termasuk dalam subset jenis untuk bagian nyata dan imajiner. |
operator>> |
Fungsi templat yang mengekstrak nilai kompleks dari aliran input. |
Kelas
Nama | Deskripsi |
---|---|
complex<double> |
Templat kelas khusus secara eksplisit menjelaskan objek yang menyimpan sepasang objek yang diurutkan, kedua jenis double , di mana yang pertama mewakili bagian nyata dari bilangan kompleks dan yang kedua mewakili bagian imajiner. |
complex<float> |
Templat kelas khusus secara eksplisit menjelaskan objek yang menyimpan sepasang objek yang diurutkan, kedua jenis float , di mana yang pertama mewakili bagian nyata dari bilangan kompleks dan yang kedua mewakili bagian imajiner. |
complex<long double> |
Templat kelas khusus secara eksplisit menjelaskan objek yang menyimpan sepasang objek yang diurutkan, kedua jenis long double , di mana yang pertama mewakili bagian nyata dari bilangan kompleks dan yang kedua mewakili bagian imajiner. |
complex |
Templat kelas menjelaskan objek yang digunakan untuk mewakili sistem bilangan kompleks dan melakukan operasi aritmatika yang kompleks. |
Harfiah
Header <kompleks> menentukan literal yang ditentukan pengguna berikut. Harfiah membuat bilangan kompleks dengan bagian nyata dari nol dan bagian imajiner yang memiliki nilai parameter input.
Deklarasi | Deskripsi |
---|---|
constexpr complex<long double> operator""il(long double d) constexpr complex<long double> operator""il(unsigned long long d) |
Kembali: complex<long double>{0.0L, static_cast<long double>(d)} |
constexpr complex<double> operator""i(long double d) constexpr complex<double> operator""i(unsigned long long d) |
Mengembalikan: complex<double>{0.0, static_cast<double>(d)} . |
constexpr complex<float> operator""if(long double d) constexpr complex<float> operator""if(unsigned long long d) |
Mengembalikan: complex<float>{0.0f, static_cast<float>(d)} . |