私はC++で係数an、bn(100、T = 2 * pi)を計算し、それらが少数のソースを使って正しいことを確認しました。Matlab(Scilab)の与えられた係数an、bnからのフーリエ級数グラフ生成
(X + 2)* ABS(COS(2 * X *(X-π/ 6)))
M=csvRead(filename, ";", [], 'double')
n=size(M,1)
for i = 1:n
A(i)=M(i)
B(i)=M(i + n)
end
function series=solution(x)
series=A(1)/2;
for i = 2:n
series=series+(A(i)*cos(i*x)+B(i)*sin(i*x));
end
endfunction
function series=solution2(x)
series=(x+2).*abs(cos(2.*x.*(x-%pi/6)));
endfunction
x = -%pi:%pi/100:%pi
plot2d(x, solution(x), 3)
x2 = -%pi:%pi/100:%pi
plot2d(x2, solution2(x2), 4)
:今はScilabので与えられた例関数のフーリエ級数グラフを生成
を試みますここで が結果です:
それは明らかにその傾向はOKですが、最初と期間の終了が(?逆に)間違って見えます。 Scilabコードに問題はありますか?問題を引き起こす原因は何ですか?関数解(x)のsin/cosの値は?私は、bn値を提供し、そこでの誤算をチェックすべきですか?
この問題は既に解決していますか? – Attila