]> git.ipfire.org Git - thirdparty/man-pages.git/blob - man3/sinh.3
225c3150414480c7382403b4237baf0ffd64a183
[thirdparty/man-pages.git] / man3 / sinh.3
1 .\" Copyright 1993 David Metcalfe (david@prism.demon.co.uk)
2 .\" and Copyright 2008, Linux Foundation, written by Michael Kerrisk
3 .\" <mtk.manpages@gmail.com>
4 .\"
5 .\" SPDX-License-Identifier: Linux-man-pages-copyleft
6 .\"
7 .\" References consulted:
8 .\" Linux libc source code
9 .\" Lewine's _POSIX Programmer's Guide_ (O'Reilly & Associates, 1991)
10 .\" 386BSD man pages
11 .\" Modified 1993-07-24 by Rik Faith (faith@cs.unc.edu)
12 .\" Modified 1996-06-08 by aeb
13 .\" Modified 2002-07-27 by Walter Harms
14 .\" (walter.harms@informatik.uni-oldenburg.de)
15 .\"
16 .TH SINH 3 2021-03-22 "Linux man-pages (unreleased)" "Linux Programmer's Manual"
17 .SH NAME
18 sinh, sinhf, sinhl \- hyperbolic sine function
19 .SH LIBRARY
20 Math library
21 .RI ( libm ", " \-lm )
22 .SH SYNOPSIS
23 .nf
24 .B #include <math.h>
25 .PP
26 .BI "double sinh(double " x );
27 .BI "float sinhf(float " x );
28 .BI "long double sinhl(long double " x );
29 .fi
30 .PP
31 .RS -4
32 Feature Test Macro Requirements for glibc (see
33 .BR feature_test_macros (7)):
34 .RE
35 .PP
36 .BR sinhf (),
37 .BR sinhl ():
38 .nf
39 _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
40 || /* Since glibc 2.19: */ _DEFAULT_SOURCE
41 || /* Glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
42 .fi
43 .SH DESCRIPTION
44 These functions return the hyperbolic sine of
45 .IR x ,
46 which
47 is defined mathematically as:
48 .PP
49 .nf
50 sinh(x) = (exp(x) \- exp(\-x)) / 2
51 .fi
52 .SH RETURN VALUE
53 On success, these functions return the hyperbolic sine of
54 .IR x .
55 .PP
56 If
57 .I x
58 is a NaN, a NaN is returned.
59 .PP
60 If
61 .I x
62 is +0 (\-0), +0 (\-0) is returned.
63 .PP
64 If
65 .I x
66 is positive infinity (negative infinity),
67 positive infinity (negative infinity) is returned.
68 .PP
69 If the result overflows,
70 a range error occurs,
71 and the functions return
72 .BR HUGE_VAL ,
73 .BR HUGE_VALF ,
74 or
75 .BR HUGE_VALL ,
76 respectively, with the same sign as
77 .IR x .
78 .\"
79 .\" POSIX.1-2001 documents an optional range error (underflow)
80 .\" for subnormal x;
81 .\" glibc 2.8 does not do this.
82 .SH ERRORS
83 See
84 .BR math_error (7)
85 for information on how to determine whether an error has occurred
86 when calling these functions.
87 .PP
88 The following errors can occur:
89 .TP
90 Range error: result overflow
91 .I errno
92 is set to
93 .BR ERANGE .
94 An overflow floating-point exception
95 .RB ( FE_OVERFLOW )
96 is raised.
97 .SH ATTRIBUTES
98 For an explanation of the terms used in this section, see
99 .BR attributes (7).
100 .ad l
101 .nh
102 .TS
103 allbox;
104 lbx lb lb
105 l l l.
106 Interface Attribute Value
107 T{
108 .BR sinh (),
109 .BR sinhf (),
110 .BR sinhl ()
111 T} Thread safety MT-Safe
112 .TE
113 .hy
114 .ad
115 .sp 1
116 .SH STANDARDS
117 C99, POSIX.1-2001, POSIX.1-2008.
118 .PP
119 The variant returning
120 .I double
121 also conforms to
122 SVr4, 4.3BSD, C89.
123 .SH SEE ALSO
124 .BR acosh (3),
125 .BR asinh (3),
126 .BR atanh (3),
127 .BR cosh (3),
128 .BR csinh (3),
129 .BR tanh (3)