参考: Interface(インターフェース) 2017年10月号, pp.158-159
1/sqrt(x) という式での補正は平方根の計算が必要なためかなりのコストを伴う。しかし漸化式の振幅である x=sin^2 + cos^2 がすぐに 1 からずれることはない。
そこで、1/sqrt(x) を、x=1 を中心にテイラー展開した 2 項目までを使って計算することにする。
すなわち 1/sqrt(x) の代わりに 1.5 - 0.5 x を計算することにする。1/sqrt(sin^2 + cos^2) の代わりに 1.5 - 0.5 (sin ^2 + cos^2) を計算するということである。
Excel で確かめてみる。わざと誤差が出やすいよう sin(Δθ)、cos(Δθ) の精度を落としているので、今回の簡易補正だと次第に振幅がずれてゆくが、実際はもっと精度が高いのでこんな誤差は出ない。
.xlsx (recurSinCosCorrSimple.xlsx - Google ドライブ)