#範例11-4:比較不同n級數的傅立葉級數Fourier Series去模擬自然對數函數ln(x)的線型效果 #注意:若是要傅立葉級數Fourier Series去模擬自然對數函數ln(x)的線型,因為,自然對數函數ln(x)在0的位置的值為-∞(負無限大),所以在x=0位置無法模擬 #本題採用 (0.5pi < x < 2.5pi)的週期波 #(1)若是n級數太少(n=5),就會形成鋸齒狀模擬結果 #(2)若是n級數夠大(n=40)),就會形成平滑化的模擬結果(但是計算時間要等久一點) from sympy import * x = symbols('x') f = Function('f')(x) f = ln(x) s = fourier_series(f, (x, pi/2, 5/2*pi)) fs5 = s.truncate(n=5) fs50 = s.truncate(n=40) p1 = plot(fs5, fs50, show=False) p1[0].line_color = 'red' p1[1].line_color = 'green' p1[0].label = '$fourier(n=5)$' p1[1].label = '$fourier(n=40)$' p1.legend = True p1.show()