A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://en.cppreference.com/w/cpp/algorithm/../ranges/../../c/header/../numeric/complex/ctan.html below:

ctanf, ctan, ctanl - cppreference.com

(1) (since C99) (2) (since C99) (3) (since C99)

#define tan( z )

(4) (since C99)

1-3) Computes the complex tangent of z.

4)

Type-generic macro: If

z

has type

long double complex

,

ctanl

is called. if

z

has type

double complex

,

ctan

is called, if

z

has type

float complex

,

ctanf

is called. If

z

is real or integer, then the macro invokes the corresponding real function (

tanf

,

tan

,

tanl

). If

z

is imaginary, then the macro invokes the corresponding real version of the function

tanh

, implementing the formula

tan(iy) = i tanh(y)

, and the return type is imaginary.

[edit] Parameters [edit] Return value

If no errors occur, the complex tangent of z is returned.

Errors and special cases are handled as if the operation is implemented by -i * ctanh(i*z), where i is the imaginary unit.

[edit] Notes

Tangent is an analytical function on the complex plain and has no branch cuts. It is periodic with respect to the real component, with period πi, and has poles of the first order along the real line, at coordinates (π(1/2 + n), 0). However no common floating-point representation is able to represent π/2 exactly, thus there is no value of the argument for which a pole error occurs.

Mathematical definition of the tangent is

tan z = [edit] Example
#include <stdio.h>
#include <math.h>
#include <complex.h>
 
int main(void)
{
    double complex z = ctan(1);  // behaves like real tangent along the real line
    printf("tan(1+0i) = %f%+fi ( tan(1)=%f)\n", creal(z), cimag(z), tan(1));
 
    double complex z2 = ctan(I); // behaves like tanh along the imaginary line 
    printf("tan(0+1i) = %f%+fi (tanh(1)=%f)\n", creal(z2), cimag(z2), tanh(1));
}

Output:

tan(1+0i) = 1.557408+0.000000i ( tan(1)=1.557408)
tan(0+1i) = 0.000000+0.761594i (tanh(1)=0.761594)
[edit] References
[edit] See also

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4