FourierTransform ライブラリ

- 目次 -


概要 - Abstract

このライブラリ math.FourierTransform は、離散フーリエ変換(DFT)の処理を提供します。

現時点で高速フーリエ変換(FFT)は実装されておらず、計算オーダーが N^2 の単純なDFTのみが実装されています。

なお、このモジュールでは varcomplex 型による多倍長精度の離散フーリエ変換処理も提供されますが、
ただアルゴリズムが実装されているだけであり、演算誤差の蓄積や、桁落ち等に対する特別な措置は行われません。

つまり、最終桁まで正しい値が得られる訳ではなく、演算結果の末尾に、常に誤差蓄積による正しくない部分が含まれます。
この誤差部分の長さは、実装のアルゴリズムの違いや、引数による桁落ちやその他影響の違いなど、場合によって異なります。

従って、多倍長精度のDFT(varcomplex型)を使用する場合は、
必要な桁数よりも、十分に大きな桁数で関数を呼び出し、得られた結果から不要な(誤差を含む)部分を切り捨てて下さい。


目次 - Index

const int FORWARD
順変換となるフーリエ変換の指数部符号です。
const int BACKWARD
逆変換となるフーリエ変換の指数部符号です。
complex[ ] dft(complex arg[ ], int sgn)
離散フーリエ変換を行います。定義域は 0〜2π で、変換後の規格化は行いません。
varcomplex[ ] dft(varcomplex arg[ ], int sgn)
離散フーリエ変換を行います。定義域は 0〜2π で、変換後の規格化は行いません。

構造体 - Structs

- なし - None -


変数 - Variables

文法的定義
- Signature
const int FORWARD
変数名
- Name
FORWARD
役割
- Role
順変換となるフーリエ変換の指数部符号です。
文法的定義
- Signature
const int BACKWARD
変数名
- Name
BACKWARD
役割
- Role
逆変換となるフーリエ変換の指数部符号です。

関数 - Functions

文法的定義
- Signature
complex[ ] dft(complex arg[ ], int sgn)
関数名
- Name
dft
役割
- Role
離散フーリエ変換を行います。定義域は 0〜2π で、変換後の規格化は行いません。
引数
- Arguments
(complex[]型) arg : 離散フーリエ変換したいデータを入力します。
(int型) sgn : フーリエ変換の指数部符号です。-1で順変換、1で逆変換となります。通常は定数 FourierTransform.FORWARD (順変換)または FourierTransform.BACKWARD (逆変換) を用いて指定します。
戻り値
- Return
(complex[]型) 引数を離散フーリエ変換した値です。
文法的定義
- Signature
varcomplex[ ] dft(varcomplex arg[ ], int sgn)
関数名
- Name
dft
役割
- Role
離散フーリエ変換を行います。定義域は 0〜2π で、変換後の規格化は行いません。
引数
- Arguments
(varcomplex[]型) arg : 離散フーリエ変換したいデータを入力します。
(int型) sgn : フーリエ変換の指数部符号です。-1で順変換、1で逆変換となります。通常は定数 FourierTransform.FORWARD (順変換)または FourierTransform.BACKWARD (逆変換) を用いて指定します。
戻り値
- Return
(varcomplex[]型) 引数を離散フーリエ変換した値です。


スポンサーリンク



この階層の目次
お知らせ

各ソフトウェアをアップデート、リニアングラフのコマンド拡張やVCSSLの英語対応など
2024/02/05 - 各ソフトの一斉アップデートの内容をお知らせします。今回は、リニアングラフのコマンド機能を大幅拡張したのがメインです。また、VCSSLのメッセージ類の英語対応も行いました。

Vnano の Ver.1.1 で実装した反復計算高速化の内側
2024/01/17 - 前回のお知らせ記事の続編です。スクリプトエンジン Vnano の Ver.1.1 において実施した高速化を、エンジン内部の実装面から掘り下げて解説します。

スクリプトエンジン Vnano の Ver.1.1 を公開、同じ内容の反復実行が劇的に高速化
2023/12/22 - スクリプトエンジン Vnano の最新版を公開しました。同じ計算式やスクリプトを反復実行する速さが、大幅に向上しました。次期版リニアングラフ3D内での活用例を交えつつ、詳しく解説します。

新着
[公式ガイドサンプル] 各種の図形や画像を描画する

「VCSSL 2DCG開発ガイド」内のサンプルコードです。図形や画像などを描画します。
2022-12-16
角度の「度」とラジアンとを相互変換し、図示もするツール

45度などの「度」の値と、ラジアンの値とを相互に変換できるツールです。対応する角度の図示もできます。
2022-11-22
[公式ガイドサンプル] 立体モデルを回転させるアニメーション

「VCSSL 3DCG開発ガイド」内のサンプルコードです。立体モデルを、アニメーションで回転させ続けます
2022-11-18
[公式ガイドサンプル] 立体モデルを回転させる

「VCSSL 3DCG開発ガイド」内のサンプルコードです。立体モデルを、指定した角度だけ回転させます。
2022-11-17
[公式ガイドサンプル] 四則演算の計算順序や、カッコを使った順序指定

「VCSSLスタートアップガイド」内のサンプルコードです。四則演算が計算される順序や、カッコを使って順序を指定する方法を例示します。
2022-10-31