在 Julia 中计算统一的 n 根

Tio*_*ias 1 algebra julia

我想在 Julia 中有一个依赖于 $n$ 的算法,这样它就会生成 n 个统一的根。

(1,w^{1}, w^{2}, ..., w^{n-1}. 这样对于每 1\leq i\leq n, 我们有 (w^{i})^ {n}-1=0 )

非常感谢您的合作,

mca*_*ott 7

julia> roots(n) = map(cispi, range(0, 2, length=n+1)[1:end-1])
roots (generic function with 1 method)

julia> roots(8)
8-element Vector{ComplexF64}:
                 1.0 + 0.0im
  0.7071067811865476 + 0.7071067811865476im
                 0.0 + 1.0im
 -0.7071067811865476 + 0.7071067811865476im
                -1.0 + 0.0im
 -0.7071067811865476 - 0.7071067811865476im
                 0.0 - 1.0im
  0.7071067811865476 - 0.7071067811865476im
Run Code Online (Sandbox Code Playgroud)

您可以编写roots_exp(n) = exp.(im .* range(0, 2pi, length=n+1)[1:end-1]),但对于纯虚论点,cisexp. 并且cispi稍微更准确,或者至少,更有可能在您期望的时候为您提供漂亮的整数,如上所示。