リーマン ゼータ関数の部分和を組み込みの Matlab 関数 zeta(s) と比較するプログラムを作成しようとしています。0.1 パーセントの精度を達成するために、関数が最小数の項を出力するようにします。while ループが最善の方法だと思っていましたが、プログラムの実行速度が遅すぎます。私はまだそれから結果を得ていません。
function[n] = riemannzeta(s)
error = 1; n = 1; an = 1; S = an;
while error >= 0.1
an = 1/n^s;
S = S + an;
n = n + 1;
z = zeta(s);
error = ((S - z)/z)*100;
end
end
私はそれを次のように呼び出します:
riemannzeta(3)