---
name: "std::tr1"
section: "3"
platform: "linux"
package: "gcc"
version: "16.2.1+r23+gd564253eb6c8-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/std::tr1"
---

# std::tr1(3)

ISO C++ TR1 entities toplevel namespace is std::tr1.

## NAME

std::tr1 - ISO C++ TR1 entities toplevel namespace is std::tr1.

## SYNOPSIS

### Namespaces

namespace **\_\_detail**\
 Implementation details not part of the namespace std::tr1 interface.

### Functions

template\<typename \_Tp\> **std::complex**\< \_Tp \> **acos** (const **std::complex**\< \_Tp \> &)\
 template\<typename \_Tp\> **std::complex**\< \_Tp \> **acosh** (const **std::complex**\< \_Tp \> &)\
 template\<typename \_Tp\> \_Tp **arg** (const **complex**\< \_Tp \> &)\
 Return phase angle of *z*.  template\<typename \_Tp\> **std::complex**\< \_Tp \> **asin** (const **std::complex**\< \_Tp \> &)\
 template\<typename \_Tp\> **std::complex**\< \_Tp \> **asinh** (const **std::complex**\< \_Tp \> &)\
 template\<typename \_Tp\> \_\_gnu\_cxx::\_\_promote\< \_Tp \>::\_\_type **assoc\_laguerre** (unsigned int \_\_n, unsigned int \_\_m, \_Tp \_\_x)\
 5\.2.1.1 Associated Laguerre polynomials.  float **assoc\_laguerref** (unsigned int \_\_n, unsigned int \_\_m, float \_\_x)\
 long double **assoc\_laguerrel** (unsigned int \_\_n, unsigned int \_\_m, long double \_\_x)\
 template\<typename \_Tp\> \_\_gnu\_cxx::\_\_promote\< \_Tp \>::\_\_type **assoc\_legendre** (unsigned int \_\_l, unsigned int \_\_m, \_Tp \_\_x)\
 5\.2.1.2 Associated Legendre functions.  float **assoc\_legendref** (unsigned int \_\_l, unsigned int \_\_m, float \_\_x)\
 long double **assoc\_legendrel** (unsigned int \_\_l, unsigned int \_\_m, long double \_\_x)\
 template\<typename \_Tp\> **std::complex**\< \_Tp \> **atan** (const **std::complex**\< \_Tp \> &)\
 template\<typename \_Tp\> **std::complex**\< \_Tp \> **atanh** (const **std::complex**\< \_Tp \> &)\
 template\<typename \_Tpx, typename \_Tpy\> \_\_gnu\_cxx::\_\_promote\_2\< \_Tpx, \_Tpy \>::\_\_type **beta** (\_Tpx \_\_x, \_Tpy \_\_y)\
 5\.2.1.3 Beta functions.  float **betaf** (float \_\_x, float \_\_y)\
 long double **betal** (long double \_\_x, long double \_\_y)\
 template\<typename \_Tp\> \_\_gnu\_cxx::\_\_promote\< \_Tp \>::\_\_type **comp\_ellint\_1** (\_Tp \_\_k)\
 5\.2.1.4 Complete elliptic integrals of the first kind.  float **comp\_ellint\_1f** (float \_\_k)\
 long double **comp\_ellint\_1l** (long double \_\_k)\
 template\<typename \_Tp\> \_\_gnu\_cxx::\_\_promote\< \_Tp \>::\_\_type **comp\_ellint\_2** (\_Tp \_\_k)\
 5\.2.1.5 Complete elliptic integrals of the second kind.  float **comp\_ellint\_2f** (float \_\_k)\
 long double **comp\_ellint\_2l** (long double \_\_k)\
 template\<typename \_Tp, typename \_Tpn\> \_\_gnu\_cxx::\_\_promote\_2\< \_Tp, \_Tpn \>::\_\_type **comp\_ellint\_3** (\_Tp \_\_k, \_Tpn \_\_nu)\
 5\.2.1.6 Complete elliptic integrals of the third kind.  float **comp\_ellint\_3f** (float \_\_k, float \_\_nu)\
 long double **comp\_ellint\_3l** (long double \_\_k, long double \_\_nu)\
 template\<typename \_Tpa, typename \_Tpc, typename \_Tp\> \_\_gnu\_cxx::\_\_promote\_3\< \_Tpa, \_Tpc, \_Tp \>::\_\_type **conf\_hyperg** (\_Tpa \_\_a, \_Tpc \_\_c, \_Tp \_\_x)\
 float **conf\_hypergf** (float \_\_a, float \_\_c, float \_\_x)\
 long double **conf\_hypergl** (long double \_\_a, long double \_\_c, long double \_\_x)\
 template\<typename \_Tp\> **std::complex**\< typename \_\_gnu\_cxx::\_\_promote\< \_Tp \>::\_\_type \> **conj** (\_Tp \_\_x)\
 template\<typename \_Tp\> **std::complex**\< \_Tp \> **conj** (const **std::complex**\< \_Tp \> &\_\_z)\
 template\<typename \_Tpnu, typename \_Tp\> \_\_gnu\_cxx::\_\_promote\_2\< \_Tpnu, \_Tp \>::\_\_type **cyl\_bessel\_i** (\_Tpnu \_\_nu, \_Tp \_\_x)\
 5\.2.1.8 Regular modified cylindrical Bessel functions.  float **cyl\_bessel\_if** (float \_\_nu, float \_\_x)\
 long double **cyl\_bessel\_il** (long double \_\_nu, long double \_\_x)\
 template\<typename \_Tpnu, typename \_Tp\> \_\_gnu\_cxx::\_\_promote\_2\< \_Tpnu, \_Tp \>::\_\_type **cyl\_bessel\_j** (\_Tpnu \_\_nu, \_Tp \_\_x)\
 5\.2.1.9 Cylindrical Bessel functions (of the first kind).  float **cyl\_bessel\_jf** (float \_\_nu, float \_\_x)\
 long double **cyl\_bessel\_jl** (long double \_\_nu, long double \_\_x)\
 template\<typename \_Tpnu, typename \_Tp\> \_\_gnu\_cxx::\_\_promote\_2\< \_Tpnu, \_Tp \>::\_\_type **cyl\_bessel\_k** (\_Tpnu \_\_nu, \_Tp \_\_x)\
 5\.2.1.10 Irregular modified cylindrical Bessel functions.  float **cyl\_bessel\_kf** (float \_\_nu, float \_\_x)\
 long double **cyl\_bessel\_kl** (long double \_\_nu, long double \_\_x)\
 template\<typename \_Tpnu, typename \_Tp\> \_\_gnu\_cxx::\_\_promote\_2\< \_Tpnu, \_Tp \>::\_\_type **cyl\_neumann** (\_Tpnu \_\_nu, \_Tp \_\_x)\
 5\.2.1.11 Cylindrical Neumann functions.  float **cyl\_neumannf** (float \_\_nu, float \_\_x)\
 long double **cyl\_neumannl** (long double \_\_nu, long double \_\_x)\
 template\<typename \_Tp, typename \_Tpp\> \_\_gnu\_cxx::\_\_promote\_2\< \_Tp, \_Tpp \>::\_\_type **ellint\_1** (\_Tp \_\_k, \_Tpp \_\_phi)\
 5\.2.1.12 Incomplete elliptic integrals of the first kind.  float **ellint\_1f** (float \_\_k, float \_\_phi)\
 long double **ellint\_1l** (long double \_\_k, long double \_\_phi)\
 template\<typename \_Tp, typename \_Tpp\> \_\_gnu\_cxx::\_\_promote\_2\< \_Tp, \_Tpp \>::\_\_type **ellint\_2** (\_Tp \_\_k, \_Tpp \_\_phi)\
 5\.2.1.13 Incomplete elliptic integrals of the second kind.  float **ellint\_2f** (float \_\_k, float \_\_phi)\
 long double **ellint\_2l** (long double \_\_k, long double \_\_phi)\
 template\<typename \_Tp, typename \_Tpn, typename \_Tpp\> \_\_gnu\_cxx::\_\_promote\_3\< \_Tp, \_Tpn, \_Tpp \>::\_\_type **ellint\_3** (\_Tp \_\_k, \_Tpn \_\_nu, \_Tpp \_\_phi)\
 5\.2.1.14 Incomplete elliptic integrals of the third kind.  float **ellint\_3f** (float \_\_k, float \_\_nu, float \_\_phi)\
 long double **ellint\_3l** (long double \_\_k, long double \_\_nu, long double \_\_phi)\
 template\<typename \_Tp\> \_\_gnu\_cxx::\_\_promote\< \_Tp \>::\_\_type **expint** (\_Tp \_\_x)\
 5\.2.1.15 Exponential integrals.  float **expintf** (float \_\_x)\
 long double **expintl** (long double \_\_x)\
 template\<typename \_Tp\> \_\_gnu\_cxx::\_\_promote\< \_Tp \>::\_\_type **fabs** (\_Tp \_\_x)\
 template\<typename \_Tp\> **std::complex**\< \_Tp \> **fabs** (const **std::complex**\< \_Tp \> &\_\_z)\
 fabs(\_\_z) \[8.1.8\].  float **fabs** (float \_\_x)\
 long double **fabs** (long double \_\_x)\
 template\<typename \_Tp\> \_\_gnu\_cxx::\_\_promote\< \_Tp \>::\_\_type **hermite** (unsigned int \_\_n, \_Tp \_\_x)\
 5\.2.1.16 Hermite polynomials.  float **hermitef** (unsigned int \_\_n, float \_\_x)\
 long double **hermitel** (unsigned int \_\_n, long double \_\_x)\
 template\<typename \_Tpa, typename \_Tpb, typename \_Tpc, typename \_Tp\> \_\_gnu\_cxx::\_\_promote\_4\< \_Tpa, \_Tpb, \_Tpc, \_Tp \>::\_\_type **hyperg** (\_Tpa \_\_a, \_Tpb \_\_b, \_Tpc \_\_c, \_Tp \_\_x)\
 float **hypergf** (float \_\_a, float \_\_b, float \_\_c, float \_\_x)\
 long double **hypergl** (long double \_\_a, long double \_\_b, long double \_\_c, long double \_\_x)\
 template\<typename \_Tp\> constexpr \_Tp **imag** (const **complex**\< \_Tp \> &\_\_z)\
 template\<typename \_Tp\> \_\_gnu\_cxx::\_\_promote\< \_Tp \>::\_\_type **laguerre** (unsigned int \_\_n, \_Tp \_\_x)\
 5\.2.1.18 Laguerre polynomials.  float **laguerref** (unsigned int \_\_n, float \_\_x)\
 long double **laguerrel** (unsigned int \_\_n, long double \_\_x)\
 template\<typename \_Tp\> \_\_gnu\_cxx::\_\_promote\< \_Tp \>::\_\_type **legendre** (unsigned int \_\_n, \_Tp \_\_x)\
 5\.2.1.19 Legendre polynomials.  float **legendref** (unsigned int \_\_n, float \_\_x)\
 long double **legendrel** (unsigned int \_\_n, long double \_\_x)\
 template\<typename \_Tp\> \_Tp constexpr **norm** (const **complex**\< \_Tp \> &)\
 Return *z* magnitude squared.  template\<typename \_Tp\> **complex**\< \_Tp \> **polar** (const \_Tp &, const \_Tp &=\_Tp(0))\
 Return complex with magnitude *rho* and angle *theta*.  template\<typename \_Tp, typename \_Up\> **std::complex**\< typename \_\_gnu\_cxx::\_\_promote\_2\< \_Tp, \_Up \>::\_\_type \> **polar** (const \_Tp &\_\_rho, const \_Up &\_\_theta)\
 template\<typename \_Tp, typename \_Up\> \_\_gnu\_cxx::\_\_promote\_2\< \_Tp, \_Up \>::\_\_type **pow** (\_Tp \_\_x, \_Up \_\_y)\
 template\<typename \_Tp\> **std::complex**\< \_Tp \> **pow** (const \_Tp &\_\_x, const **std::complex**\< \_Tp \> &\_\_y)\
 template\<typename \_Tp, typename \_Up\> **std::complex**\< typename \_\_gnu\_cxx::\_\_promote\_2\< \_Tp, \_Up \>::\_\_type \> **pow** (const \_Tp &\_\_x, const **std::complex**\< \_Up \> &\_\_y)\
 template\<typename \_Tp\> **std::complex**\< \_Tp \> **pow** (const **std::complex**\< \_Tp \> &\_\_x, const \_Tp &\_\_y)\
 template\<typename \_Tp, typename \_Up\> **std::complex**\< typename \_\_gnu\_cxx::\_\_promote\_2\< \_Tp, \_Up \>::\_\_type \> **pow** (const **std::complex**\< \_Tp \> &\_\_x, const \_Up &\_\_y)\
 Additional overloads \[8.1.9\].  template\<typename \_Tp\> **std::complex**\< \_Tp \> **pow** (const **std::complex**\< \_Tp \> &\_\_x, const **std::complex**\< \_Tp \> &\_\_y)\
 template\<typename \_Tp, typename \_Up\> **std::complex**\< typename \_\_gnu\_cxx::\_\_promote\_2\< \_Tp, \_Up \>::\_\_type \> **pow** (const **std::complex**\< \_Tp \> &\_\_x, const **std::complex**\< \_Up \> &\_\_y)\
 float **pow** (float \_\_x, float \_\_y)\
 long double **pow** (long double \_\_x, long double \_\_y)\
 template\<typename \_Tp\> constexpr \_Tp **real** (const **complex**\< \_Tp \> &\_\_z)\
 template\<typename \_Tp\> \_\_gnu\_cxx::\_\_promote\< \_Tp \>::\_\_type **riemann\_zeta** (\_Tp \_\_x)\
 5\.2.1.20 Riemann zeta function.  float **riemann\_zetaf** (float \_\_x)\
 long double **riemann\_zetal** (long double \_\_x)\
 template\<typename \_Tp\> \_\_gnu\_cxx::\_\_promote\< \_Tp \>::\_\_type **sph\_bessel** (unsigned int \_\_n, \_Tp \_\_x)\
 5\.2.1.21 Spherical Bessel functions.  float **sph\_besself** (unsigned int \_\_n, float \_\_x)\
 long double **sph\_bessell** (unsigned int \_\_n, long double \_\_x)\
 template\<typename \_Tp\> \_\_gnu\_cxx::\_\_promote\< \_Tp \>::\_\_type **sph\_legendre** (unsigned int \_\_l, unsigned int \_\_m, \_Tp \_\_theta)\
 5\.2.1.22 Spherical associated Legendre functions.  float **sph\_legendref** (unsigned int \_\_l, unsigned int \_\_m, float \_\_theta)\
 long double **sph\_legendrel** (unsigned int \_\_l, unsigned int \_\_m, long double \_\_theta)\
 template\<typename \_Tp\> \_\_gnu\_cxx::\_\_promote\< \_Tp \>::\_\_type **sph\_neumann** (unsigned int \_\_n, \_Tp \_\_x)\
 5\.2.1.23 Spherical Neumann functions.  float **sph\_neumannf** (unsigned int \_\_n, float \_\_x)\
 long double **sph\_neumannl** (unsigned int \_\_n, long double \_\_x)\

## Detailed Description

ISO C++ TR1 entities toplevel namespace is std::tr1.

## Function Documentation

### template\<typename \_Tp\> \_Tp std::arg (const complex\< \_Tp \> & \_\_z) \[inline\]

Return phase angle of *z*.

### template\<typename \_Tpa, typename \_Tpc, typename \_Tp\> \_\_gnu\_cxx::\_\_promote\_3\< \_Tpa, \_Tpc, \_Tp \>::\_\_type \_\_gnu\_cxx::conf\_hyperg (\_Tpa \_\_a, \_Tpc \_\_c, \_Tp \_\_x) \[inline\]

Return the confluent hypergeometric function $ {}\_1F\_1(a;c;x) $ of real numeratorial parameter a, denominatorial parameter c, and argument x.

The confluent hypergeometric function is defined by    \] where the Pochhammer symbol is $ (x)\_k = (x)(x+1)...(x+k-1) $, $ (x)\_0 = 1 $

**Parameters**

*\_\_a* The numeratorial parameter \
 *\_\_c* The denominatorial parameter \
 *\_\_x* The argument

### float \_\_gnu\_cxx::conf\_hypergf (float \_\_a, float \_\_c, float \_\_x) \[inline\]

Return the confluent hypergeometric function $ {}\_1F\_1(a;c;x) $ of float numeratorial parameter a, denominatorial parameter c, and argument x.

**See also**

conf\_hyperg for details.

### long double \_\_gnu\_cxx::conf\_hypergl (long double \_\_a, long double \_\_c, long double \_\_x) \[inline\]

Return the confluent hypergeometric function $ {}\_1F\_1(a;c;x) $ of long double numeratorial parameter a, denominatorial parameter c, and argument x.

**See also**

conf\_hyperg for details.

### template\<typename \_Tpa, typename \_Tpb, typename \_Tpc, typename \_Tp\> \_\_gnu\_cxx::\_\_promote\_4\< \_Tpa, \_Tpb, \_Tpc, \_Tp \>::\_\_type \_\_gnu\_cxx::hyperg (\_Tpa \_\_a, \_Tpb \_\_b, \_Tpc \_\_c, \_Tp \_\_x) \[inline\]

Return the hypergeometric function $ {}\_2F\_1(a,b;c;x) $ of real numeratorial parameters a and b, denominatorial parameter c, and argument x.

The hypergeometric function is defined by    \] where the Pochhammer symbol is $ (x)\_k = (x)(x+1)...(x+k-1) $, $ (x)\_0 = 1 $

**Parameters**

*\_\_a* The first numeratorial parameter \
 *\_\_b* The second numeratorial parameter \
 *\_\_c* The denominatorial parameter \
 *\_\_x* The argument

### float \_\_gnu\_cxx::hypergf (float \_\_a, float \_\_b, float \_\_c, float \_\_x) \[inline\]

Return the hypergeometric function $ {}\_2F\_1(a,b;c;x) $ of @ float numeratorial parameters a and b, denominatorial parameter c, and argument x.

**See also**

hyperg for details.

### long double \_\_gnu\_cxx::hypergl (long double \_\_a, long double \_\_b, long double \_\_c, long double \_\_x) \[inline\]

Return the hypergeometric function $ {}\_2F\_1(a,b;c;x) $ of long double numeratorial parameters a and b, denominatorial parameter c, and argument x.

**See also**

hyperg for details.

### template\<typename \_Tp\> \_Tp constexpr std::norm (const complex\< \_Tp \> & ) \[constexpr\]

Return *z* magnitude squared.

### template\<typename \_Tp\> complex\< \_Tp \> std::polar (const \_Tp & \_\_rho, const \_Tp & \_\_theta = \_Tp(0)) \[inline\]

Return complex with magnitude *rho* and angle *theta*.

## Author

Generated automatically by Doxygen for libstdc++ from the source code.
