前提・実現したいこと
Pythonです、フーリエ級数展開したものをグラフに表示させるプログラムを作っているのですが、これではエラーが出てしまいます。 dtが定義されていないってことだとおもうんですけど、、、
■■な機能を実装中に以下のエラーメッセージが発生しました。
発生している問題・エラーメッセージ
SyntaxError: invalid syntax
該当のソースコード
# -*- coding: utf-8 -*- import numpy as np import matplotlib.pyplot as plt def f(t,k): return (6/k/np.pi(np.cos(k*np.pi/3)-np.cos(k*np.pi/12)) * (np.sin(k * t) / (k * np.pi)) dt = 0.01 start = -2.0*np.pi end = 2.0*np.pi # 横軸 t の作成.-6.28 から 6.28 を0.01 おきに.t は横ベクトル. t = np.arange(start, end, dt) K=1 s1 = (1.0/2.0)*np.ones(t.size) for k in range(K): s1 = s1 + f(t,k+1) K=3 s3 = (1.0/2.0)*np.ones(t.size) for k in range(K): s3 = s3 + f(t,k+1) K=10 s10 = (1.0/2.0)*np.ones(t.size) for k in range(K): s10 = s10 + f(t,k+1) # k+1 にしているのは,ranng(5) は 0 はじまりのため. K=100 s100 = (1.0/2.0)*np.ones(t.size) for k in range(K): s100 = s100 + f(t,k+1) K=1000 s1000 = (1.0/2.0)*np.ones(t.size) for k in range(K): s1000 = s1000 + f(t,k+1) fig=plt.figure(0) plt.plot (t, s3, linewidth=1.0, color="r",linestyle="solid",label="$ K=3 $") plt.plot (t, s10, linewidth=1.0, color="g",linestyle="solid",label="$ K=10 $") plt.plot (t, s100, linewidth=1.0, color="b",linestyle="solid",label="$ K=100 $") plt.plot (t, s1000, linewidth=1.0, color="m",linestyle="solid",label="$ K=1000 $") plt.grid() plt.legend() plt.show() fig.savefig('f102.pdf')
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。