Excel VBAで複素数演算(一次方程式・FFT他, Numerical Recipes移植)、フィッティング(非線形含む)、ルンゲクッタ8次(DOP853)などが使えるライブラリ その2: FFTライブラリ
昨日の続き。今回はFFT。
Sub FFT(cdata() As Complex, nn As Long, isign As Integer)
のようにサブルーチンとして宣言されています。
まずは複素数のデータ配列を準備します。2のべき乗個(Longで宣言)のデータが必要です。
Dim z1() as Complex
Dim n as Long
n=4 ' 2のべき乗
Redim z1(n)
のように宣言して、データをいれ、
Call FFT(z1, n, 1)
のように呼び出します。z1にデータが上書きされます。
最後の1を-1にすると逆変換になりますが、
データ個数nでは割られていません!必要ならば後で自ら割る必要があります。
(これはNumerical Recipesのルーチンの仕様です)
なので変換→逆変換を繰り返すと元に戻らずにn倍された値になります。
例題:
z1(1) = ToComplex(1#, 2#)
z1(2) = ToComplex(2#, 3#)
z1(3) = ToComplex(3#, 4#)
z1(4) = ToComplex(4#, 5#)
Call FFT(z1, n, 1)
Call FFT(z1, n, -1)
For i = 1 To n
z1(i) = Cdiv(z1(i), ToComplex(CDbl(n), 0#))
Next i
For i = 1 To n
Debug.Print z1(i).x & "+i" & z1(i).y
Next i
とすると元に戻ります。
ライブラリ本体:
またルンゲクッタ8次のDOP853ルーチンとそのドライバ。
メルセンヌツイスタ用
« #深イイ話 徳井さんが一番会いたいダンサーとして東京ゲゲゲイが登場。あ、ゲゲゲイの鬼太郎のダンサーか! | トップページ | Silicon LabsのThunderboard™ React Derby ミニチュア・カー・キットに衝撃を受ける、、、Bluetooth+センサのキットとくればロボットカーと思いきや、、、 »
「パソコン・インターネット」カテゴリの記事
- 高周波回路シミュレータQucsStudioがuSimmicsに名称変更し、バージョンも4.8.3から5.8にアップデートされた。Qucsと区別するためだそうだ。また、Pythonの高周波用ライブラリscikit-rfもv1.5.0にバージョンアップされていた(2024.12.04)
- MATLAB Onlineで高周波基板設計用のRF PCB Toolboxを使ってみる。Coupled line バンドパスフィルタやratraceカプラが設計できる。モーメント法(MoM)や有限要素法(FEM)でちゃんと計算してくれているようだ。(2024.12.06)
- MATLAB Onlineで高周波用のRF Toolboxを使ってみる。Touchstoneファイルの読み込み、dB表示グラフ、スミスチャートなど簡単にできるし、フィルタ合成やIEEE P370 De-embedding(ZC-2xThru)も使える(MATLABで書かれたものがオリジナル)。(2024.12.05)
- MATLAB OnlineのSimulinkでローレンツ方程式をode8で計算してみる。Interface 2025年1月号でMATLAB Onlineの半年ライセンスがついてきたので。Simulinkを使うのは初めてだったが、わかりやすいSimulink入門コースを修了したのですぐできた。(2024.12.04)
- Interface2025年1月号はMATLABで1ニューロンから手作り 数学&図解でディープ・ラーニング。初歩からAlexNetの転移学習、CNNまで話題が豊富で、なんとMatlab Onlineの半年ライセンスがついてくる。Simulinkや各種toolboxも使える。早速MATLAB入門オンラインコース修了した。(2024.12.03)
「学問・資格」カテゴリの記事
- 高周波・RFニュース 2024年12月11日 5G AmericasがセルラーネットワークでのAIのホワイトペーパー、GSAが2024年の5Gレビュー、NordicがIoTに適したThingy:91 X発表、Wi-Fi 6GHzが世界でどうなっているか、Huaweiが5G GaNパワーアンプで有利、Samsung Galaxy M34 5G分解(2024.12.11)
- 高周波・RFニュース2024年12月9日 iFixitがDJI Neo分解、TechInsightsがApple Pencil Pro分解、QualcommのNeurIPS 2024でのAI技術発表、IntelのIEDM 2024での発表、 Nokiaの7GHz帯の6G、Analog DevicesのPhased Array Antennaのホワイトペーパー、ZDTが史上二番目の売上高(2024.12.09)
- 高周波・RFニュース 2024年12月6日 NGMNが無線パフォーマンス評価フレームワーク発行、5GAAがC-V2Xのロードマップ発行、Marvellの3nm 1.6Tbps PAM4インターコネクト、Nokiaの2.4Tbps光伝送、Silicon Labsの低消費電力モジュール、Xiaomi 14T Pro分解動画(2024.12.06)
- 高周波回路シミュレータQucsStudioがuSimmicsに名称変更し、バージョンも4.8.3から5.8にアップデートされた。Qucsと区別するためだそうだ。また、Pythonの高周波用ライブラリscikit-rfもv1.5.0にバージョンアップされていた(2024.12.04)
- 日経サイエンス2025年1月号の特集 和算再発見の佐藤賢一さんの記事「算聖 関孝和の実像」に出てきた矢高に対する円弧の2乗の近似式をカシオの高精度計算サイトkeisan.casio.jpの自作式として作った。ものすごい精度であることがよくわかる。(2024.12.03)
「日記・コラム・つぶやき」カテゴリの記事
- 高周波・RFニュース 2024年12月11日 5G AmericasがセルラーネットワークでのAIのホワイトペーパー、GSAが2024年の5Gレビュー、NordicがIoTに適したThingy:91 X発表、Wi-Fi 6GHzが世界でどうなっているか、Huaweiが5G GaNパワーアンプで有利、Samsung Galaxy M34 5G分解(2024.12.11)
- 高周波・RFニュース2024年12月9日 iFixitがDJI Neo分解、TechInsightsがApple Pencil Pro分解、QualcommのNeurIPS 2024でのAI技術発表、IntelのIEDM 2024での発表、 Nokiaの7GHz帯の6G、Analog DevicesのPhased Array Antennaのホワイトペーパー、ZDTが史上二番目の売上高(2024.12.09)
- 高周波・RFニュース 2024年12月6日 NGMNが無線パフォーマンス評価フレームワーク発行、5GAAがC-V2Xのロードマップ発行、Marvellの3nm 1.6Tbps PAM4インターコネクト、Nokiaの2.4Tbps光伝送、Silicon Labsの低消費電力モジュール、Xiaomi 14T Pro分解動画(2024.12.06)
- 高周波回路シミュレータQucsStudioがuSimmicsに名称変更し、バージョンも4.8.3から5.8にアップデートされた。Qucsと区別するためだそうだ。また、Pythonの高周波用ライブラリscikit-rfもv1.5.0にバージョンアップされていた(2024.12.04)
- 日経サイエンス2025年1月号の特集 和算再発見の佐藤賢一さんの記事「算聖 関孝和の実像」に出てきた矢高に対する円弧の2乗の近似式をカシオの高精度計算サイトkeisan.casio.jpの自作式として作った。ものすごい精度であることがよくわかる。(2024.12.03)
トラックバック
この記事へのトラックバック一覧です: Excel VBAで複素数演算(一次方程式・FFT他, Numerical Recipes移植)、フィッティング(非線形含む)、ルンゲクッタ8次(DOP853)などが使えるライブラリ その2: FFTライブラリ:
« #深イイ話 徳井さんが一番会いたいダンサーとして東京ゲゲゲイが登場。あ、ゲゲゲイの鬼太郎のダンサーか! | トップページ | Silicon LabsのThunderboard™ React Derby ミニチュア・カー・キットに衝撃を受ける、、、Bluetooth+センサのキットとくればロボットカーと思いきや、、、 »
コメント