# as.primitive

0th

Percentile

##### Converts basic periods to a primitive pair

Given a pair of basic periods, returns a primitive pair and (optionally) the unimodular transformation used.

Keywords
array
##### Usage
as.primitive(p, n = 3, tol = 1e-05, give.answers = FALSE)
is.primitive(p, n = 3, tol = 1e-05)
##### Arguments
p

Two element vector containing the two basic periods

n

Maximum magnitude of matrix entries considered

tol

Numerical tolerance used to determine reality of period ratios

Boolean, with TRUE meaning to return extra information (unimodular matrix and the magnitudes of the primitive periods) and default FALSE meaning to return just the primitive periods

##### Details

Primitive periods are not unique. This function follows Chandrasekharan and others (but not, of course, Abramowitz and Stegun) in demanding that the real part of p1, and the imaginary part of p2, are nonnegative.

##### Value

If give.answers is TRUE, return a list with components

M

The unimodular matrix used

p

The pair of primitive periods

mags

The magnitudes of the primitive periods

##### Note

Here, “unimodular” includes the case of determinant minus one.

##### References

K. Chandrasekharan 1985. Elliptic functions, Springer-Verlag

• as.primitive
• is.primitive
##### Examples
# NOT RUN {
as.primitive(c(3+5i,2+3i))
as.primitive(c(3+5i,2+3i),n=5)

##Rounding error:
is.primitive(c(1,1i))

## Try
is.primitive(c(1,1.001i))

# }

Documentation reproduced from package elliptic, version 1.4-0, License: GPL-2

### Community examples

Looks like there are no examples yet.