|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.commons.math3.complex.RootsOfUnity
public class RootsOfUnity
A helper class for the computation and caching of the n
-th roots of
unity.
Constructor Summary | |
---|---|
RootsOfUnity()
Build an engine for computing the n -th roots of unity. |
Method Summary | |
---|---|
void |
computeRoots(int n)
Computes the n -th roots of unity. |
double |
getImaginary(int k)
Get the imaginary part of the k -th n -th root of unity. |
int |
getNumberOfRoots()
Returns the number of roots of unity currently stored. |
double |
getReal(int k)
Get the real part of the k -th n -th root of unity. |
boolean |
isCounterClockWise()
Returns true if computeRoots(int) was called with a
positive value of its argument n . |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public RootsOfUnity()
n
-th roots of unity.
Method Detail |
---|
public boolean isCounterClockWise() throws MathIllegalStateException
true
if computeRoots(int)
was called with a
positive value of its argument n
. If true
, then
counter-clockwise ordering of the roots of unity should be used.
true
if the roots of unity are stored in
counter-clockwise order
MathIllegalStateException
- if no roots of unity have been computed
yetpublic void computeRoots(int n) throws ZeroException
Computes the n
-th roots of unity. The roots are stored in
omega[]
, such that omega[k] = w ^ k
, where
k = 0, ..., n - 1
, w = exp(2 * pi * i / n)
and
i = sqrt(-1)
.
Note that n
can be positive of negative
abs(n)
is always the number of roots of unity.n > 0
, then the roots are stored in counter-clockwise order.n < 0
, then the roots are stored in clockwise order.
n
- the (signed) number of roots of unity to be computed
ZeroException
- if n = 0
public double getReal(int k) throws MathIllegalStateException, MathIllegalArgumentException
k
-th n
-th root of unity.
k
- index of the n
-th root of unity
k
-th n
-th root of unity
MathIllegalStateException
- if no roots of unity have been
computed yet
MathIllegalArgumentException
- if k
is out of rangepublic double getImaginary(int k) throws MathIllegalStateException, OutOfRangeException
k
-th n
-th root of unity.
k
- index of the n
-th root of unity
k
-th n
-th root of unity
MathIllegalStateException
- if no roots of unity have been
computed yet
OutOfRangeException
- if k
is out of rangepublic int getNumberOfRoots()
computeRoots(int)
was called with n
, then this method
returns abs(n)
. If no roots of unity have been computed yet, this
method returns 0.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |