std:: comp_ellint_1, std:: comp_ellint_1f, std:: comp_ellint_1l
|
double
comp_ellint_1
(
double
arg
)
;
double
comp_ellint_1
(
float
arg
)
;
|
(1) | |
|
double
comp_ellint_1
(
IntegralType arg
)
;
|
(2) | |
모든 특수 함수와 마찬가지로,
comp_ellint_1
은 구현체가
__STDCPP_MATH_SPEC_FUNCS__
를 최소 201003L 값으로 정의하고, 사용자가 표준 라이브러리 헤더를 포함하기 전에
__STDCPP_WANT_MATH_SPEC_FUNCS__
를 정의한 경우에만
<cmath>
에서 사용 가능함이 보장됩니다.
목차 |
매개변수
| arg | - | 부동 소수점 또는 정수형 타입의 값 |
반환값
오류가 발생하지 않으면, 첫 번째 종류의 완전 타원 적분 값인 arg 에 대한 ellint_1(arg, π/2) 가 반환됩니다.
오류 처리
오류는 math_errhandling 에 명시된 대로 보고될 수 있습니다.
- 인수가 NaN이면, NaN이 반환되고 도메인 오류가 보고되지 않습니다.
- 만약 |arg| > 1 인 경우, 도메인 오류가 발생할 수 있습니다.
참고 사항
TR 29124을 지원하지 않지만 TR 19768을 지원하는 구현체들은 이 함수를
tr1/cmath
헤더와
std::tr1
네임스페이스에서 제공합니다.
이 함수의 구현체는 또한 boost.math에서도 사용 가능합니다 .
예제
(gcc 6.0에서 표시된 대로 작동합니다)
#define __STDCPP_WANT_MATH_SPEC_FUNCS__ 1 #include <cmath> #include <iostream> int main() { double hpi = std::acos(-1) / 2; std::cout << "K(0) = " << std::comp_ellint_1(0) << '\n' << "π/2 = " << hpi << '\n' << "K(0.5) = " << std::comp_ellint_1(0.5) << '\n' << "F(0.5, π/2) = " << std::ellint_1(0.5, hpi) << '\n'; }
출력:
K(0) = 1.5708 π/2 = 1.5708 K(0.5) = 1.68575 F(0.5, π/2) = 1.68575
외부 링크
Weisstein, Eric W. "제1종 완전 타원 적분." MathWorld - Wolfram 웹 자원에서 제공.
참고 항목
|
제1종 (불완전) 타원 적분
(함수) |