MATLAB、Python、Scilab、Julia比較ページはこちら
https://www.simulationroom999.com/blog/comparison-of-matlab-python-scilab/
はじめに
の、
MATLAB,Python,Scilab,Julia比較 第5章 その71【複素フーリエ級数③】
MATLAB,Python,Scilab,Julia比較 第5章 その72【複素フーリエ級数④】
を書き直したもの。
前回は、オイラーの公式とそれの変形の式を元にcos関数、sin関数を複素指数関数で表現した。
これについて、もう少し話を掘り下げる。
その過程でcos関数、sin関数を複素指数関数で表現したものをMATLABで検算もしてみる。
【再掲】複素フーリエ級数に至る道
まずは複素フーリエ級数に至る道を再掲。
- テイラー級数
- マクローリン級数
- 指数関数のマクローリン展開
- cos(x)のマクローリン展開
- sin(x)のマクローリン展開
- オイラーの公式
- 複素フーリエ級数
さらに、複素フーリエ級数を導出するステップも再掲。
- オイラーの公式とそれの変形の式を元にcos関数、sin関数を複素指数関数で表現する。
- 実数フーリエ級数のcos関数、sin関数に上記を代入する。
- 代入した上で頑張って最適化する。
- Σの下限を\(-\infty\)、上限を\(\infty\)にする。
今回は、cos関数、sin関数を複素指数関数について少し掘り下げ。
【再掲】sin,cosを複素指数関数で表現する公式
これが前回求めた公式
\(
\begin{eqnarray}
\begin{bmatrix}
\cos(x)\\
\sin(x)
\end{bmatrix}&=&
\begin{bmatrix}
\displaystyle\frac{1}{2}&\displaystyle\frac{1}{2}\\
\displaystyle\frac{1}{2i}&\displaystyle – \frac{1}{2i}
\end{bmatrix}
\begin{bmatrix}
e^{ix}\\e^{-ix}
\end{bmatrix}\\
\end{eqnarray}
\)
\(
\begin{eqnarray}
\begin{cases}
\displaystyle\cos(x)=\frac{e^{ix}+e^{-ix}}{2} \\
\displaystyle\sin(x)=\frac{e^{ix}-e^{-ix}}{2i} \\
\end{cases}
\end{eqnarray}
\)
実数フーリエ級数に代入していくのだろうけど、魔境臭半端ない。
その前にMATLABで逆行列を検算してみよう。
MATLABだったら、逆行列は一撃で求まるはず。
MATLABで逆行列を検算
MATLABで演算させた結果は以下。
>> inv([1 1i; 1 -1i])
ans =
0.5000 0.5000
0 - 0.5000i 0 + 0.5000i
というわけで、一緒と・・・
思いきや異なる結果に・・・。
式に直すと以下になる。
\(
\begin{eqnarray}
\begin{bmatrix}
1&i\\
1&-i
\end{bmatrix}^{-1}=
\begin{bmatrix}
0.5&0.5\\
-0.5i&0.5i
\end{bmatrix}=
\begin{bmatrix}
\displaystyle\frac{1}{2}&\displaystyle\frac{1}{2}\\
\displaystyle-\frac{1}{2}i&\displaystyle\frac{1}{2}i
\end{bmatrix}
\end{eqnarray}
\)
というわけでなんか一致してない。
虚数で割ることと負の虚数を掛けること。
結論としては、
これらの式は同一。
これは虚数で割ることと、負の虚数が掛けることが同一であるために発生している事象になる。
虚数で割ることと負の虚数を掛けることが同一であることの証明
これの証明は簡単。
\(
\displaystyle\frac{1}{i}=\frac{1\times i}{i\times i}=\frac{1i}{-1}=-1i
\)
これを加味してMATLABが出力したものを変形する。
\(
\begin{eqnarray}
\begin{bmatrix}
1&i\\
1&-i
\end{bmatrix}^{-1}=
\begin{bmatrix}
0.5&0.5\\
-0.5i&0.5i
\end{bmatrix}=
\begin{bmatrix}
\displaystyle\frac{1}{2}&\displaystyle\frac{1}{2}\\
\displaystyle-\frac{1}{2}i&\displaystyle\frac{1}{2}i
\end{bmatrix}=
\begin{bmatrix}
\displaystyle\frac{1}{2}&\displaystyle\frac{1}{2}\\
\displaystyle\frac{1}{2i}&-\displaystyle\frac{1}{2i}
\end{bmatrix}
\end{eqnarray}
\)
というわけで一致したと言える。
「虚数で割ることと負の虚数を掛けることが同一」は
複素フーリエ級数を導出するときにも使用するから覚えておいた方が良いだろう。
まとめ
- 前回のcos,sinを複素指数関数で表現する式をMATLABの逆行列で検算。
- なぜか異なるような結果になった。
- 「虚数で割ることと負の虚数を掛けることが同一」である。
- これは、複素フーリエ級数を導出するときにも使用するから覚えておいた方が良い。
MATLAB、Python、Scilab、Julia比較ページはこちら
マンガでわかるフーリエ解析
手を動かしてまなぶ フーリエ解析・ラプラス変換
物理数学 量子力学のためのフーリエ解析・特殊関数
単位が取れるフーリエ解析ノート
今日から使えるフーリエ変換 普及版 式の意味を理解し、使いこなす
コメント