質問編集履歴

2

誤字修正

2020/10/07 07:02

投稿

kagiya
kagiya

スコア1

test CHANGED
File without changes
test CHANGED
@@ -34,7 +34,7 @@
34
34
 
35
35
 
36
36
 
37
- **2020年10月7日16時00分 エラー発生したので更新します。**
37
+ **2020年10月7日16時00分 エラー箇所について更新します。**
38
38
 
39
39
  エラー発生個所
40
40
 

1

020年10月7日16時00分 エラー内容の追記・キャプチャ

2020/10/07 07:02

投稿

kagiya
kagiya

スコア1

test CHANGED
File without changes
test CHANGED
@@ -8,7 +8,9 @@
8
8
 
9
9
  参考URLを見ながらある程度進めることはできたのですが、途中で躓いてしまいました。
10
10
 
11
- 数学的な知見が必要なのか、
11
+
12
+
13
+
12
14
 
13
15
 
14
16
 
@@ -32,6 +34,80 @@
32
34
 
33
35
 
34
36
 
37
+ **2020年10月7日16時00分 エラー発生したので更新します。**
38
+
39
+ エラー発生個所
40
+
41
+ ![イメージ説明](b60078a4f34be3a4a5086dfd58d1a64c.jpeg)
42
+
43
+ おそらくこの辺の個所の誤りなのかとは思うのですが、参考URLの内容ががいまいち理解できず苦戦しています。
44
+
45
+ ```C#
46
+
47
+ private void ProcessSample2(float sample)
48
+
49
+ {
50
+
51
+ var windowsize = _recorded2.Count;
52
+
53
+
54
+
55
+ _recorded2.Add(sample);
56
+
57
+
58
+
59
+ if (_recorded2.Count == 1024)
60
+
61
+ {
62
+
63
+
64
+
65
+ var window = Window.Hamming(windowsize);
66
+
67
+ _recorded2 = _recorded2.Select((v, i) => v * (float)window[i]).ToList();
68
+
69
+
70
+
71
+ Complex[] complexData = _recorded2.Select(v => new Complex(v, 0.0)).ToArray();
72
+
73
+
74
+
75
+ Fourier.Forward(complexData, FourierOptions.Matlab); //
76
+
77
+
78
+
79
+ var s = windowsize * (1.0 / 8000.0);
80
+
81
+
82
+
83
+ var point = complexData.Take(complexData.Count() / 2).Select((v, index) =>
84
+
85
+ new DataPoint((double)index / s,
86
+
87
+ Math.Sqrt(v.Real * v.Real + v.Imaginary * v.Imaginary))).ToList();
88
+
89
+
90
+
91
+ _lineSeries2.Points.Clear();
92
+
93
+ _lineSeries2.Points.AddRange(point);
94
+
95
+ this.plotView2.InvalidatePlot(true);
96
+
97
+
98
+
99
+ }
100
+
101
+
102
+
103
+ }
104
+
105
+
106
+
107
+ ```
108
+
109
+
110
+
35
111
  ### 該当のソースコード
36
112
 
37
113