math

三角関数の定義域を複素数に拡張

R6RS の (sin z) を実装する。三角関数の定義域を複素数に拡張するという話は習った覚えがない。きっと忘れたのだろう。 cos(ix) = (e^-x + e^x) / 2 sin(ix) = (e^-x - e^x) / 2i sin(z) = sin(x+iy) = sin(x)cos(iy) + sin(iy)cos(x) = sin(x) * ((e^-y + …

ありがちなミス

atan2 の引数の順序を間違える。