Excel VBAで複素数/FFTが使えるライブラリ
Excel VBAで複素数が使えて、かつ高速フーリエ変換(FFT)も複素数のまま扱えるライブラリを作ってみた。これ↓
複素数は構造体で、
Public Type Complex
x As Double
y As Double
End Type
のように定義してある。内容は:
・複素数の四則演算、べき乗、指数、対数、共役とatan2
・複素数のFFT
くらい。
複素数を
Dim Z as Complex
のように定義して、
値の代入:Z = ToComplex(1,0) 変数どおしならZ1 = Z2のようにできる。
共役:Z=Conj(Z1)、実部:x = Rez(Z)、虚部:y=Imz(Z)
足し算 :Z = Cadd(Z1, Z2)、引き算:Z = Csub(Z1, Z2)、掛け算 :Z = Cmul(Z1, Z2)、割り算:Z = Cdiv(Z1, Z2)、べき乗:Z = Cpow(Z1, Z2)
指数:Z = Cexp(Z1), 対数:Z = Clog(Z1) あとついでにatan2(x, y)も。
FFT:Call FFT(Z, n, 1) あるいはCall FFT(Z, n, -1) →最後の符号は順・逆変換
ですよ。エラーチェックも何もしてないのでご了承を(何かあっても責任はとれません。。。)
« カドケシスティックを買った。 | トップページ | ユニクロUT ZoomのCMソングはFantastic Plastic Machine »
「パソコン・インターネット」カテゴリの記事
- Google ColabのJulia言語でFPUT問題(Fermi–Pasta–Ulam–Tsingou、非線形結合した振動子が最初に与えたモードに戻る再帰現象)をDifferentialEquations.jlの2階の常微分方程式ソルバーDynamicalODEProblemでシンプレクティック8次のKahanLi8で計算、振動子の動きも動画にしてみる。(2025.05.22)
- PythonでFDTD法で電磁界シミュレーションできるopenEMSを使う(2)例題にあるマイクロストリップパッチアンテナ(MSA)を計算する。Sパラメータや入力インピーダンスだけでなく近傍界から遠方界の変換で指向性も計算できる。電流分布も動画で見る。給電はLumpedポートが使える。(2025.05.19)
- PythonでFDTD法で電磁界シミュレーションできるopenEMSを使う(1)例題にあるマイクロストリップラインのノッチフィルタ(スタブ)を動かして電磁界分布を動画で見てみる。CSXCADでモデルは確認できるし、ParaViewで電磁界分布が見られる。Sパラメータも計算できる。(2025.05.14)
「学問・資格」カテゴリの記事
- 高周波・RFニュース2025年5月23日 HUBER+SUHNERが76-81GHzのミリ波レーダ向け3D waveguide antenna発表、Silicon LabsがIoT向けシリーズ3 SoC発表、GSMAがM360ユーラシアでAIと5Gのイノベーションと協業について発表、ロームがAIサーバー向けMOSFET発表(2025.05.23)
- 高周波・RFニュース 2025年5月22日 三星電機(SEMCO)が165℃対応の車載インダクタ発表、KYOCERA AVXがリップル電流についての技術文書発行、QualcommとXiaomiの契約15年目、OmdiaがNokiaをPrivate 5Gの2025の王者と決定(2025.05.22)
- Google ColabのJulia言語でFPUT問題(Fermi–Pasta–Ulam–Tsingou、非線形結合した振動子が最初に与えたモードに戻る再帰現象)をDifferentialEquations.jlの2階の常微分方程式ソルバーDynamicalODEProblemでシンプレクティック8次のKahanLi8で計算、振動子の動きも動画にしてみる。(2025.05.22)
- 高周波・RFニュース 2025年5月21日 TDKが0201のRFインダクタ発表、InfineonがUWBのFiraコンソーシアムの理事会に、ubloxがロボット用GNSSモジュール発表、FibocomがMediaTekのT930を使った5Gモジュール発表、Motolora Edge 60 Pro分解動画(2025.05.21)
« カドケシスティックを買った。 | トップページ | ユニクロUT ZoomのCMソングはFantastic Plastic Machine »
コメント