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.