Accelerating the pace of engineering and science

# ellipke

Complete elliptic integrals of first and second kind

## Syntax

• K = ellipke(M)
• [K,E] = ellipke(M) example
• [K,E] = ellipke(M,tol) example

## Description

K = ellipke(M) returns the complete elliptic integral of the first kind for each element in M.

example

[K,E] = ellipke(M) returns the complete elliptic integral of the first and second kind.

example

[K,E] = ellipke(M,tol) computes the complete elliptic integral to accuracy tol. The default value of tol is eps. Increase tol for a less accurate but more quickly computed answer.

## Examples

expand all

### Find Complete Elliptic Integrals of First and Second Kind

Find the complete elliptic integrals of the first and second kind for M = 0.5.

```M = 0.5;
[K,E] = ellipke(M)
```
```K =

1.8541

E =

1.3506

```

### Plot Complete Elliptic Integrals of First and Second Kind

Plot the complete elliptic integrals of the first and second kind for the allowed range of M.

```M = 0:0.01:1;
[K,E] = ellipke(M);
plot(M,K,M,E)
grid on
xlabel('M')
title('Complete Elliptic Integrals of First and Second Kind')
legend('First kind','Second kind')
```

### Faster Calculations of the Complete Elliptic Integrals by Changing the Tolerance

The default value of tol is eps. Find the runtime with the default value for arbitrary M using tic and toc. Increase tol by a factor of thousand and find the runtime. Compare the runtimes.

```tic
ellipke(0.904561)
toc
tic
ellipke(0.904561,eps*1000)
toc
```
```ans =

2.6001

Elapsed time is 0.037641 seconds.

ans =

2.6001

Elapsed time is 0.014071 seconds.
```

ellipke runs significantly faster when tolerance is significantly increased.

## Input Arguments

expand all

### M — Floating-point inputnumber | vector | matrix | multidimensional array

Floating-point input, specified as a floating-point number, vector, matrix, or multidimensional array. M is limited to values 0≤m≤1.

Data Types: single | double

### tol — Accuracy of resulteps (default) | nonnegative real number

Accuracy of result, specified as a nonnegative real number. The default value is eps.

Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
Complex Number Support: Yes

## Output Arguments

expand all

### K — Complete elliptic integral of first kindfloating-point number | floating-point vector | floating-point matrix | floating-point multidimensional array

Complete elliptic integral of the first kind, specified as a floating-point number, vector, matrix, or multidimensional array.

### E — Complete elliptic integral of second kindfloating-point number | floating-point vector | floating-point matrix | floating-point multidimensional array

Complete elliptic integral of the second kind, specified as a floating-point number, vector, matrix, or multidimensional array.

expand all

### Complete Elliptic Integrals of the First and Second Kind

The complete elliptic integral of the first kind is

$\left[K\left(m\right)\right]={\int }_{0}^{1}{\left[\left(1-{t}^{2}\right)\left(1-m{t}^{2}\right)\right]}^{-\frac{1}{2}}dt.$

where m is the first argument of ellipke.

The complete elliptic integral of the second kind is

$E\left(m\right)={\int }_{0}^{1}\left(1-{t}^{2}{\right)}^{-\frac{1}{2}}{\left(1-m{t}^{2}\right)}^{\frac{1}{2}}dt.$

Some definitions of the elliptic functions use the elliptical modulus k or modular angle α instead of the parameter m. They are related by

${k}^{2}=m={\mathrm{sin}}^{2}\alpha .$

## References

[1] Abramowitz, M., and I. A. Stegun. Handbook of Mathematical Functions. Dover Publications, 1965.