# fpp: Fundamental period parallelogram In elliptic: Weierstrass and Jacobi Elliptic Functions

## Description

Reduce z=x+iy to a congruent value within the fundamental period parallelogram (FPP). Function `mn()` gives (real, possibly noninteger) m and n such that z=m*p_1+n*p_2.

## Usage

 ```1 2``` ```fpp(z, p, give=FALSE) mn(z, p) ```

## Arguments

 `z` Primary complex argument `p` Vector of length two with first element the first period and second element the second period. Note that p is the period, so p_1=2ω_1, where omega1 is the half period `give` Boolean, with `TRUE` meaning to return M and N, and default `FALSE` meaning to return just the congruent values

## Details

Function `fpp()` is fully vectorized.

Use function `mn()` to determine the “coordinates” of a point.

Use `floor(mn(z,p)) %*% p ` to give the complex value of the (unique) point in the same period parallelogram as `z` that is congruent to the origin.

## Author(s)

Robin K. S. Hankin

## Examples

 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15``` ```p <- c(1.01+1.123i, 1.1+1.43i) mn(z=1:10,p) %*% p ## should be close to 1:10 #Now specify some periods: p2 <- c(1+1i,1-1i) #Define a sequence of complex numbers that zooms off to infinity: u <- seq(from=0,by=pi+1i*exp(1),len=2007) #and plot the sequence, modulo the periods: plot(fpp(z=u,p=p2)) #and check that the resulting points are within the qpp: polygon(c(-1,0,1,0),c(0,1,0,-1)) ```

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