mirror of
https://github.com/lcn2/calc.git
synced 2025-08-16 01:03:29 +03:00
74 lines
2.3 KiB
Plaintext
74 lines
2.3 KiB
Plaintext
NAME
|
|
gd - Gudermannian function
|
|
|
|
SYNOPSIS
|
|
gd(z [,eps])
|
|
|
|
TYPES
|
|
z number (real or complex)
|
|
eps nonzero real, defaults to epsilon()
|
|
|
|
return number or "Log of zero or infinity" error value
|
|
|
|
DESCRIPTION
|
|
Calculate the Gudermannian of z to a multiple of eps with errors in
|
|
real and imaginary parts less in absolute value than .75 * eps,
|
|
or return an error value if z is close to one of the branch points
|
|
at odd multiples of (pi/2) * i.
|
|
|
|
gd(z) is usually defined initially for real z by one of the formulae
|
|
|
|
gd(z) = 2 * atan(exp(z)) - pi/2
|
|
|
|
= 2 * atan(tanh(z/2))
|
|
|
|
= atan(sinh(z)),
|
|
|
|
or as the integral from 0 to z of (1/cosh(t))dt. For complex z, the
|
|
principal branch, approximated by gd(z, eps), has the cut:
|
|
re(z) = 0, abs(im(z)) >= pi/2; on the cut calc takes gd(z) to be
|
|
the limit as z is approached from the right or left according as
|
|
im(z) > or < 0.
|
|
|
|
If z = x + y*i and abs(y) < pi/2, gd(z) is given by
|
|
|
|
gd(z) = atan(sinh(x)/cos(y)) + i * atanh(sin(y)/cosh(x)).
|
|
|
|
EXAMPLE
|
|
; print gd(1, 1e-5), gd(1, 1e-10), gd(1, 1e-15)
|
|
.86577 .8657694832 .865769483239659
|
|
|
|
; print gd(2+1i, 1e-5), gd(2+1i, 1e-10)
|
|
1.42291+.22751i 1.4229114625+.2275106584i
|
|
|
|
LIMITS
|
|
none
|
|
|
|
LINK LIBRARY
|
|
COMPLEX *c_gd(COMPLEX *x, NUMBER *eps)
|
|
|
|
SEE ALSO
|
|
agd, exp, ln, sin, sinh, etc.
|
|
|
|
## Copyright (C) 1999,2021 Landon Curt Noll
|
|
##
|
|
## Calc is open software; you can redistribute it and/or modify it under
|
|
## the terms of the version 2.1 of the GNU Lesser General Public License
|
|
## as published by the Free Software Foundation.
|
|
##
|
|
## Calc is distributed in the hope that it will be useful, but WITHOUT
|
|
## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
|
## or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
|
|
## Public License for more details.
|
|
##
|
|
## A copy of version 2.1 of the GNU Lesser General Public License is
|
|
## distributed with calc under the filename COPYING-LGPL. You should have
|
|
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
|
## 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
##
|
|
## Under source code control: 1997/09/06 20:03:35
|
|
## File existed as early as: 1997
|
|
##
|
|
## chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
|
## Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|