# half.periods: Calculates half periods in terms of e In elliptic: Weierstrass and Jacobi Elliptic Functions

## Description

Calculates half periods in terms of e

## Usage

 `1` ```half.periods(ignore=NULL, e=NULL, g=NULL, primitive) ```

## Arguments

 `e` e `g` g `ignore` Formal argument present to ensure that `e` or `g` is named (ignored) `primitive` Boolean, with default `TRUE` meaning to return primitive periods and `FALSE` to return the direct result of Legendre's iterative scheme

## Details

Parameter `e=c(e1,e2,e3)` are the values of the Weierstrass P function at the half periods:

e1=P(omega1), e2=P(omega2), e3=p(omega3)

where

omega1+omega2+omega3=0.

Also, e is given by the roots of the cubic equation x^3-g2*x-g3=0, but the problem is finding which root corresponds to which of the three elements of e.

## Value

Returns a pair of primitive half periods

## Note

Function `parameters()` uses function `half.periods()` internally, so do not use `parameters()` to determine `e`.

## Author(s)

Robin K. S. Hankin

## References

M. Abramowitz and I. A. Stegun 1965. Handbook of Mathematical Functions. New York, Dover.

## Examples

 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16``` ```half.periods(g=c(8,4)) ## Example 6, p665, LHS u <- half.periods(g=c(-10,2)) massage(c(u[1]-u[2] , u[1]+u[2])) ## Example 6, p665, RHS half.periods(g=c(10,2)) ## Example 7, p665, LHS u <- half.periods(g=c(7,6)) massage(c(u[1],2*u[2]+u[1])) ## Example 7, p665, RHS half.periods(g=c(1,1i, 1.1+1.4i)) half.periods(e=c(1,1i, 2, 1.1+1.4i)) g.fun(half.periods(g=c(8,4))) ## should be c(8,4) ```

elliptic documentation built on May 2, 2019, 9:37 a.m.