std:: acosh, std:: acoshf, std:: acoshl
|
헤더 파일에 정의됨
<cmath>
|
||
| (1) | ||
|
float
acosh
(
float
num
)
;
double
acosh
(
double
num
)
;
|
(C++23 이전) | |
|
/*floating-point-type*/
acosh ( /*floating-point-type*/ num ) ; |
(C++23 이후)
(C++26부터 constexpr) |
|
|
float
acoshf
(
float
num
)
;
|
(2) |
(C++11 이후)
(C++26부터 constexpr) |
|
long
double
acoshl
(
long
double
num
)
;
|
(3) |
(C++11 이후)
(C++26부터 constexpr) |
|
SIMD 오버로드
(C++26 이후)
|
||
|
헤더 파일에 정의됨
<simd>
|
||
|
template
<
/*math-floating-point*/
V
>
constexpr
/*deduced-simd-t*/
<
V
>
|
(S) | (C++26 이후) |
|
추가 오버로드
(C++11 이후)
|
||
|
헤더 파일에 정의됨
<cmath>
|
||
|
template
<
class
Integer
>
double acosh ( Integer num ) ; |
(A) | (C++26부터 constexpr) |
std::acosh
의 오버로드를 제공합니다.
(C++23부터)
|
S)
SIMD 오버로드는
v_num
에 대해 요소별(element-wise)
std::acosh
연산을 수행합니다.
|
(C++26부터) |
|
A)
모든 정수 타입에 대해 추가 오버로드가 제공되며, 이들은
double
로 처리됩니다.
|
(since C++11) |
목차 |
매개변수
| num | - | 부동 소수점 또는 정수 값 |
반환값
오류가 발생하지 않으면,
num
의 역쌍곡코사인(
cosh
-1
(num)
또는
arcosh(num)
) 값이 구간
[0, +∞]
에서 반환됩니다.
도메인 오류가 발생하면 구현에서 정의한 값이 반환됩니다(NaN이 지원되는 경우).
오류 처리
오류는 math_errhandling 에 명시된 대로 보고됩니다.
인수가 1보다 작으면 도메인 오류가 발생합니다.
구현이 IEEE 부동 소수점 연산(IEC 60559)을 지원하는 경우,
- 인수가 1보다 작으면, FE_INVALID 가 발생하고 NaN이 반환됩니다.
- 인수가 1이면, +0이 반환됩니다.
- 인수가 +∞이면, +∞가 반환됩니다.
- 인수가 NaN이면, NaN이 반환됩니다.
참고 사항
C++가 이 함수를 위해 참조하는 C 표준에서는 이 함수를 "arc hyperbolic cosine"이라고 명명하지만, 쌍곡선 함수의 역함수는 면적 함수입니다. 이들의 인수는 호(arc)가 아닌 쌍곡선 섹터의 면적입니다. 올바른 명칭은 "inverse hyperbolic cosine"(POSIX에서 사용) 또는 "area hyperbolic cosine"입니다.
추가 오버로드는 반드시 (A) 와 정확히 동일하게 제공될 필요가 없습니다. 정수형 인수 num 에 대해 std :: acosh ( num ) 가 std :: acosh ( static_cast < double > ( num ) ) 와 동일한 효과를 가지도록 보장하기에 충분하기만 하면 됩니다.
예제
#include <cerrno> #include <cfenv> #include <cfloat> #include <cmath> #include <cstring> #include <iostream> // #pragma STDC FENV_ACCESS ON int main() { std::cout << "acosh(1) = " << std::acosh(1) << '\n' << "acosh(10) = " << std::acosh(10) << '\n' << "acosh(DBL_MAX) = " << std::acosh(DBL_MAX) << '\n' << "acosh(Inf) = " << std::acosh(INFINITY) << '\n'; // error handling errno = 0; std::feclearexcept(FE_ALL_EXCEPT); std::cout << "acosh(0.5) = " << std::acosh(0.5) << '\n'; if (errno == EDOM) std::cout << " errno == EDOM: " << std::strerror(errno) << '\n'; if (std::fetestexcept(FE_INVALID)) std::cout << " FE_INVALID raised\n"; }
가능한 출력:
acosh(1) = 0
acosh(10) = 2.99322
acosh(DBL_MAX) = 710.476
acosh(Inf) = inf
acosh(0.5) = -nan
errno == EDOM: Numerical argument out of domain
FE_INVALID raised
참고 항목
|
(C++11)
(C++11)
(C++11)
|
역쌍곡사인을 계산합니다 (
arsinh(x)
)
(함수) |
|
(C++11)
(C++11)
(C++11)
|
역쌍곡탄젠트를 계산합니다 (
artanh(x)
)
(함수) |
|
(C++11)
(C++11)
|
쌍곡코사인을 계산합니다 (
cosh(x)
)
(함수) |
|
(C++11)
|
복소수의 면적 쌍곡코사인을 계산합니다 (
arcosh(z)
)
(함수 템플릿) |
|
C 문서
for
acosh
|
|
외부 링크
| Weisstein, Eric W. "Inverse Hyperbolic Cosine." From MathWorld — A Wolfram Web Resource. |