質問編集履歴

3

2016/09/13 14:10

投稿

pandanoir
pandanoir

スコア72

test CHANGED
File without changes
test CHANGED
@@ -2,6 +2,30 @@
2
2
 
3
3
 
4
4
 
5
+ # 行った検証
6
+
7
+ なんか文句つけられたので足掻いたあと記しときますね
8
+
9
+
10
+
11
+ まずwikiの数式を読み、解説を読みました。で、その通りに実装してみました。以下のコード中でstep1、step2とあるところがwikiと対応しています。また、離散フーリエ変換の定義式を元にプログラムを組み、それと比較する実験も行いました。そのプログラムと以下のプログラムは結果が一致しました。
12
+
13
+
14
+
15
+ 次に、数式を小さいケースで手計算してみました。
16
+
17
+ `Fourier[{1, 4, 9, 16}]` というケースです。このフーリエ変換で得られるF(0)は、離散フーリエ変換の定義よりf(0)+f(1)+f(2)+f(3)つまり30となります。しかし、wolfram alphaでは15となっていました。どうもwolfram alphaが間違えている気がします。
18
+
19
+
20
+
21
+ しかし、私は別に数学者でもなんでもない一個人です。wolfram alphaが正しくて私が間違えているのかもしれません。
22
+
23
+
24
+
25
+ だから、プログラムの検証を求めます。これでもまだダメでしょうか?バカで幼稚だからよく分かりません
26
+
27
+
28
+
5
29
  ```cpp
6
30
 
7
31
  #include <iostream>

2

推敲

2016/09/13 14:10

投稿

pandanoir
pandanoir

スコア72

test CHANGED
File without changes
test CHANGED
@@ -1,8 +1,4 @@
1
- 高速フーリエ変換のプログラムをwikiの数式に従って書いてみました。が、Wolfram Alphaの計算結果とずれてしまいます。
1
+ 高速フーリエ変換のプログラムをwikiの数式に従って書いてみました。が、Wolfram Alphaの計算結果とずれてしまいます。具体的には、実部が3倍、虚部が-3倍ずれています。何がおかしいのでしょうか?ちなみに、Wolfram AlphaにはFourier[{0, 1, 4, 9, 16, 25, 36, 49, 64}]と打ち込みました。
2
-
3
-
4
-
5
- Wolfram AlphaにはFourier[{0, 1, 4, 9, 16, 25, 36, 49, 64}]と打ち込みました。実部が3倍、虚部が-3倍ずれています。何がおかしいのでしょうか?
6
2
 
7
3
 
8
4
 

1

タイトルをわかりやすく

2016/09/09 02:17

投稿

pandanoir
pandanoir

スコア72

test CHANGED
@@ -1 +1 @@
1
- 離散フーリエ変換の実装あってるかわかりません
1
+ 高速フーリエ変換のプログラムの計算結果おかし
test CHANGED
File without changes