Julia早引きノート［03］複素数

###複素数(書き方例)

```ruby:note03
虚数単位をimで表す。
　z = 4 + 3im

◆実部
　real(z)

◆虚部
　imag(z)

◆複素共役
　conj(z)

◆絶対値
　abs(z)
　abs2(z) … 絶対値の2乗を得る関数

```

##解説

数学では一般に複素数単位を$i$、$x$及び$y$を実数として複素数$z$は以下に表現されます。

```math
z = x + iy
```

Juliaでは、これと同様に虚数単位を$im$として、複素数を表すことができます。
例えば、実数部を3、虚数部を4とすると以下となります。

```math
z = 4 + 3im
```

◆real(z)で実部(実数部分)を取得することができます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/399135/4b705674-507c-e22c-ef70-939962a20e6c.png)
◆imag(z)で虚部(虚数部分)を取得することができます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/399135/3e158581-3a53-0a00-bd0a-b76830436d0f.png)
◆複素共役(ふくそきょうやく)を取得するには、conj(z)を使用します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/399135/94150a9e-2ed1-b899-b00e-40c96a8a6bb1.png)
◆複素数の絶対値$|z|$を取得するには、abs(z)を使用します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/399135/46c95a8a-1ad1-bdbd-b9aa-9dbefb7af29f.png)
また、絶対値の2乗を取得するための関数**abs2()**も用意されています。2乗を取るならこちらが便利です。
![001.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/399135/aaf677b9-9b95-6d82-c255-2077ae95ff74.jpeg)


:point_up_2: Juliaでは、複素数の四則演算が可能です。


**足し算**
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/399135/181a8040-62f1-8bc2-54d1-62383f8b571f.png)
**引き算**
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/399135/38dad08b-12da-ba6b-9a6b-eb5e646f32f2.png)
**掛け算**
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/399135/60061bc5-e559-2fae-8cd1-7f1e0bb88fa9.png)
**割り算**
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/399135/1395f028-8cbb-dbc6-5b66-c6918ded2db2.png)
◆以下①が成り立つことを数値計算で確認します。

```math
z = 1 + 2im として \\
zz^* = x^2 + y^2 = |z|^2　　... ①
```

$zz^*$を計算すると、以下となります。

```math
zz^* = (1 + 2im) * conj(1 + 2im) = 5
```
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/399135/124a0827-4285-c6c0-dbf8-b5c1f1f6e199.png)
また、$x^2 + y^2$を計算すると、以下となります。

```math
x^2 + y^2 = 1 + 2^2 = 5
```

最後に、$|z|^2$を計算すると、以下となります。
![001.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/399135/93cc7df8-95e4-701c-55fa-918755d5a55f.jpeg)
よって、①が確認できました。


##もくじ
[Julia早引きノート［01］変数・定数の使い方](https://qiita.com/ttabata/items/a1ada2c0cba03672e105)
[Julia早引きノート［02］算術式、演算子](https://qiita.com/ttabata/items/90900d0914fa317f652d)
[Julia早引きノート［03］複素数]
(https://qiita.com/ttabata/items/225c77a4d71fafc3e482)
[Julia早引きノート［04］正規表現](https://qiita.com/ttabata/items/8b6e4a2b7c2ca299de03)
....
<details><summary>もくじを開く</summary><div>
[Julia早引きノート［05］if文]
(https://qiita.com/ttabata/items/4f0bcff1e32f60402dfb)
[Julia早引きノート［06］ループ処理]
(https://qiita.com/ttabata/items/2a53825101b0b75fb589)
[Julia早引きノート［07］try, catch, finally]
(https://qiita.com/ttabata/items/1d6fe990526c99b65b5f)
[Julia早引きノート［08］変数の型(Int, Float, Bool, Char, String)]
(https://qiita.com/ttabata/items/2b84a826e39bfe432b62)
[Julia早引きノート［09］関数 (1)基本編]
(https://qiita.com/ttabata/items/d9b4f2728ec0dbcc6394)
[Julia早引きノート［10］関数 (2)応用編]
(https://qiita.com/ttabata/items/462e216c43d519f1969d)
[Julia早引きノート［11］Nothing型]
(https://qiita.com/ttabata/items/0e5a6b21968d8752cf0b)
[Julia早引きノート［12］複合型(Composite Type)型]
(https://qiita.com/ttabata/items/27469216a3c33101c825)
[Julia早引きノート［13］タプル]
(https://qiita.com/ttabata/items/ebe35dbfec4efbc1c29a)
[Julia早引きノート［14］リスト(Array型一次元配列)]
(https://qiita.com/ttabata/items/7528863ccbb282e8260d)
[Julia早引きノート［15］辞書(dictionary)]
(https://qiita.com/ttabata/items/77a4f1d02b51d067bfb7)
[Julia早引きノート［16］集合]
(https://qiita.com/ttabata/items/ca8137922a785122037e)
[Julia早引きノート［17］多次元配列 (1)初期化]
(https://qiita.com/ttabata/items/01fecbd14363460a27a6)
[Julia早引きノート［18］多次元配列 (2)様々な演算や関数]
(https://qiita.com/ttabata/items/f35896a5fa005fba7fbc)
[Julia早引きノート［19］多次元配列 (3)サブ配列]
(https://qiita.com/ttabata/items/045c00406fe45270b42e)
[Julia早引きノート［20］ファイル入出力]
(https://qiita.com/ttabata/items/5a99c3998060d161ace8)
[Julia早引きノート［21］JSON、XMLファイルの入出力]
(https://qiita.com/ttabata/items/65ebec11830271f9be71)
[Julia早引きノート［22］Python関数やPythonモジュールの呼び出し]
(https://qiita.com/ttabata/items/3afc8cef40d1e98a7b17)
[Julia早引きノート［23］JuliaでのMatplotlibによるグラフ描画]
(https://qiita.com/ttabata/items/96a0e172addfac690cca)
[Julia早引きノート［24］CSVFiles(DataFrameとの連携)]
(https://qiita.com/ttabata/items/51446731a703b5aca524)
[Julia早引きノート［25］線形代数演算(ベクトル・行列計算)]
(https://qiita.com/ttabata/items/5abe14d5c510e8ca0f54)
(※引き続きコンテンツを増やしていきます)
</div></details>


##関連情報

:paperclip: Julia - 公式ページ
https://julialang.org/

:paperclip: Julia - 日本語公式ドキュメント
https://julia-doc-ja.readthedocs.io/ja/latest/index.html

:paperclip: 初めてのJuliaとインストール (Windows & Linux)
https://qiita.com/ttlabo/items/b05bb43d06239f968035

:paperclip: Julia - Mathematics
https://docs.julialang.org/en/v1/base/math/


##ご意見など

ご意見、間違い訂正などございましたらお寄せ下さい。