質問編集履歴
2
修正
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
python
|
1
|
+
python ユークリッド距離を使って、近似誤差をグラフに出力する
|
test
CHANGED
File without changes
|
1
追加情報
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
python 近似誤差をグラフに出力する
|
1
|
+
python 元の関数とフ―リエ級数展開した式の近似誤差をグラフに出力する
|
test
CHANGED
@@ -8,9 +8,15 @@
|
|
8
8
|
|
9
9
|
def func_f(t)のところは特に間違いはないと思います。
|
10
10
|
|
11
|
-
間違いがあるとすると、def func_g(t,
|
11
|
+
間違いがあるとすると、def func_g(t,k)の部分と思います。フ―リエ級数展開した式は確認して確実にあっています。(return (-1)*(1.0-np.power(-1,k))*(np.sin(k*np.pi*t)/(k*np.pi)))
|
12
12
|
|
13
13
|
for文のインデントなど色々試しましたが、どれもうまくいきません。
|
14
|
+
|
15
|
+
~追記~
|
16
|
+
|
17
|
+
func_g(t,k)のところを少し変えました。
|
18
|
+
|
19
|
+
グラフの形は理想に近付きましたが、まだ少し違います。
|
14
20
|
|
15
21
|
|
16
22
|
|
@@ -46,19 +52,19 @@
|
|
46
52
|
|
47
53
|
# 変換先関数 K項まで展開
|
48
54
|
|
49
|
-
def func_g(t,
|
55
|
+
def func_g(t, k):
|
50
56
|
|
51
|
-
def func_g_k(t,k):
|
52
|
-
|
53
|
-
|
57
|
+
return (-1)*(1.0-np.power(-1,k))*(np.sin(k*np.pi*t)/(k*np.pi))
|
54
58
|
|
55
59
|
s = (1.0/2.0)
|
56
60
|
|
57
61
|
for k in range(1,K):
|
58
62
|
|
59
|
-
s = s + func_g
|
63
|
+
s = s + func_g(t,k+1)
|
60
64
|
|
61
65
|
return s
|
66
|
+
|
67
|
+
|
62
68
|
|
63
69
|
|
64
70
|
|
@@ -108,4 +114,6 @@
|
|
108
114
|
|
109
115
|
|
110
116
|
|
117
|
+
|
118
|
+
|
111
119
|
```
|