Main Content

ellipke

제1종과 제2종의 완전 타원 적분(Complete Elliptic Integrals Of First And Second Kind)

설명

K = ellipke(M)M의 각 요소에 대한 제1종 완전 타원 적분을 반환합니다.

예제

[K,E] = ellipke(M)은 제1종과 제2종의 완전 타원 적분을 반환합니다.

예제

[K,E] = ellipke(M,tol)tol(허용오차)까지의 정확도로 완전 타원 적분을 계산합니다. tol의 디폴트 값은 eps입니다. tol 값을 올리면 정확도는 떨어지지만 답을 더 빠르게 계산할 수 있습니다.

예제

모두 축소

M = 0.5에 대한 제1종과 제2종의 완전 타원 적분을 구합니다.

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

M의 허용된 범위에 대해 제1종과 제2종의 완전 타원 적분을 플로팅합니다.

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')

Figure contains an axes object. The axes object with title Complete Elliptic Integrals of First and Second Kind, xlabel M contains 2 objects of type line. These objects represent First kind, Second kind.

tol의 디폴트 값은 eps입니다. tictoc을 이용해 임의의 M에 대한 디폴트 값으로 런타임을 구합니다. tol을 1000배로 늘린 다음 실행 시간을 구합니다. 런타임을 비교합니다.

tic
ellipke(0.904561)
ans = 2.6001
toc
Elapsed time is 0.017841 seconds.
tic
ellipke(0.904561,eps*1000)
ans = 2.6001
toc
Elapsed time is 0.005937 seconds.

허용오차를 크게 늘리면 ellipke가 확연히 더 빠르게 실행됩니다.

입력 인수

모두 축소

입력 배열로, 스칼라, 벡터, 행렬 또는 다차원 배열로 지정됩니다. M0≤m≤1인 값으로 제한됩니다.

데이터형: single | double

결과의 정확도로, 음이 아닌 실수로 지정됩니다. 디폴트 값은 eps입니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

출력 인수

모두 축소

제1종 완전 타원 적분으로, 스칼라, 벡터, 행렬, 다차원 배열 중 하나로 반환됩니다.

제2종 완전 타원 적분으로, 스칼라, 벡터, 행렬, 다차원 배열 중 하나로 반환됩니다.

세부 정보

모두 축소

제1종과 제2종의 완전 타원 적분

제1종 완전 타원 적분은 다음과 같습니다.

[K(m)]=01[(1t2)(1mt2)]12dt.

여기서 m은 ellipke의 첫 번째 인수입니다.

제2종 완전 타원 적분은 다음과 같습니다.

E(m)=01(1t2)12(1mt2)12dt.

타원 함수의 일부 정의는 파라미터 m 대신 타원 절댓값 k나 모듈러 각 α를 사용합니다. 이들은 다음과 같은 관계식을 가집니다.

k2=m=sin2α.

참고 문헌

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

확장 기능

C/C++ 코드 생성
MATLAB® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.

버전 내역

R2006a 이전에 개발됨

참고 항목