これは私が持っている三角法コードの行です。単純化して高速化する方法があれば知りたいです。ありがとう
abs((a%(2*math.pi)-b%(2*math.pi))%(2*math.pi)-math.pi)
これは私が持っている三角法コードの行です。単純化して高速化する方法があれば知りたいです。ありがとう
abs((a%(2*math.pi)-b%(2*math.pi))%(2*math.pi)-math.pi)
部分式 を計算してい((a % 2pi) - (b % 2pi)) % 2pi)
ます。モジュロ の性質により(a%c - b%c) % c == (a-b) % c
、内部モジュロは省略できます。完全な式は次のようになります。
abs((a-b) % (2*math.pi) - math.pi)
2*math.pi
結果は必ずローカル変数に格納する必要があります。これにより、いくつかのテーブル ルックアップを節約できます (グローバルでmath
、次にmath
でpi
)。
ループで使用している場合は、ループの前にローカル変数を宣言し、ローカルも作成abs
します。