Skip to content

Elliptic integrals and Jacobi elliptic functions that are GPU friendly and auto differentiable

License

Notifications You must be signed in to change notification settings

dominic-chang/JacobiElliptic.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JacobiElliptic

JacobiElliptic is an implementation of Toshio Fukushima's & Billie C. Carlson's for calculating Elliptic Integrals and Jacobi Elliptic Functions. The default algorithms are set to the Carlson algorithms.

Features

Documentation

Dev

Repo Status

Build Status Coverage

Incomplete Elliptic Integrals

Function Definition
F(φ, m) $F(\phi|m)$: Incomplete elliptic integral of the first kind
E(φ, m) $E(\phi|m)$: Incomplete elliptic integral of the second kind
Pi(n, φ, m) $\Pi(n;\,\phi|\, m)$: Incomplete elliptic integral of the third kind
J(n, φ, m) $J (n;\, \phi |\,m)=\frac{\Pi(n;\,\phi|\, m) - F(\phi,m)}{n}$: Associated incomplete elliptic integral of the third kind

Complete Elliptic Integrals

Function Definition
K(m) $K(m)$: Complete elliptic integral of the first kind
E(m) $E(m)$: Complete elliptic integral of the second kind
Pi(n, m) $\Pi(n|\, m)$: Complete elliptic integral of the third kind
J(n, m) $J (n|\,m)=\frac{\Pi(n|\, m) - K(m)}{n}$: Associated incomplete elliptic integral of the third kind

Jacobi Elliptic Functions

Function Definition
sn(u, m) $\text{sn}(u | m) = \sin(\text{am}(u | m))$
cn(u, m) $\text{cn}(u | m) = \cos(\text{am}(u | m))$
asn(u, m) $\text{asn}(u | m) = \text{sn}^{-1}(u | m)$
acn(u, m) $\text{acn}(u | m) = \text{cn}^{-1}(u | m)$