仙台に7年間の単身赴任のあと、家族のいる横浜に戻ってきた。[任意点数のFFT]一通りやろうと思っていたFFTの実装を終わらせて、それぞれの効率を比較してみた。離散Fourier変換の計算はいろいろな規則性があってそれを上手く使う賢いアルゴリズムがいっぱいあって面白い。今日は昨日の続きでNの大きな2のベキの場合の比較をする。ひとつ、驚愕の結果が得られた。実は、いまだに信じられない。なにかの間違いじゃないか、という気がしてしょうがない。[任意点数のFFT]一昨日までで実装は一段落した。最適化していないのでさくさくっ、とやってしまったが、筋道を整理するという意味ではこういうやり方の方が望ましい。いうことで、今回実装した生のままのアルゴリズムのパフォーマンスを比較してみる。[任意点数のFFT]2の基数のFFTはすでに独自に実装を終えている。Xには古い(と言うとネガティブに聞こえるかもしれないので枯れた、と言うべきか)vDSPライブラリがあってこれはCPUのベクタユニットに最適化さているという。どのくらい枯れた最適化が有効なのかベンチマークの意味でこれを組み込むことにする。[任意点数のFFT]任意点数に対応するFFTをここ数週間考えてきた。その実装もこれで一段落。今日は、まえに整理した混合基数のFFTのアルゴリズムをObjective-Cで実装する。その実装はあんがい当たり前になってしまった。[任意点数のFFT]具体的なサブクラスの実装の続き。今日はいちばん一般的なCooly-Tukey型のFFTの実装。[任意点数のFFT]クラスクラスタの具体クラスのまず一番最初、式通りのFourier変換を実装する。クラスクラスタの他のクラスのほとんどは抽象クラスではなくてこのクラスのサブクラスになる。結局やることは皆同じだし。[任意点数のFFT]先週の金曜日の夜に仙台から横浜に帰った。休みなのに今日家族は、皆それぞれ出かけて僕は留守番。丸一日ごろごろしていた。いうことで話の続きを更新。[任意点数のFFT]一通りアルゴリズムの整理ができてそれをどう割り振るかも一応決めた。いうことで実装を始めよう。ここまでくれば実装はするっ、とできる、はず。ところで実装はもちろんObjective-Cでやる。普通あまりこういった数値計算の、しかも効率を気にした実装をObjective-Cなんていう高水準の、ゆるい言語で実装するというのはないだろう。書いた式の思想というか意思(数式にはそういうものがあるというのはわかってもらえると思う)をそのまま書き下せるというのが一番望ましい、と言う意味でMathematicaが一番だけどObjective-Cはそれに次ぐ。僕にとって一番自然な実装方法。Transform)のアルゴリズムのいくつかの整理ができた。それぞれをどのように使い分けるかを考える。blogプロフィールブログを紹介するブログを紹介するログインすると自身のブログで本ブログを紹介できます連絡はdecafish@gmail.comまで。XのOpenCL(26)レンズ形状をBezierで描く(6)Mathematicaお役立ちPackage(1)最近のコメント「MTTはどうするんでしょうか....コメントありがとうございます。..>「いかにも魔笛らしく」一見かわい..情報ありがとうございます。.....と思ったら、使用感想も出てました..コメント、情報ありがとうございます..「モック展示のみ」みたいなhttp..コメントありがとうございます。..「星月夜」の実物をニューヨークで見..コメントありがとうございます。