[sf.cmath.assoc.legendre]

# 29 Numerics library [[numerics]](./#numerics)

## 29.7 Mathematical functions for floating-point types [[c.math]](c.math#sf.cmath.assoc.legendre)

### 29.7.6 Mathematical special functions [[sf.cmath]](sf.cmath#assoc.legendre)

#### 29.7.6.3 Associated Legendre functions [sf.cmath.assoc.legendre]

[ð](#lib:assoc_legendre)

`floating-point-type assoc_legendre(unsigned l, unsigned m, floating-point-type x);
float        assoc_legendref(unsigned l, unsigned m, float x);
long double  assoc_legendrel(unsigned l, unsigned m, long double x);
`

[1](#1)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/numerics.tex#L10051)

*Effects*: These functions compute
the associated Legendre functions
of their respective argumentsl, m, and x[.](#1.sentence-1)

[2](#2)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/numerics.tex#L10058)

*Returns*: Pâm(x),
where Pâm is given by Formula [29.23](#eq:sf.cmath.assoc.legendre),Pâ is given by Formula 29.38,â is l,m is m, andx is x[.](#2.sentence-1)

Pâm(x)=(1âx2)m/2dmdxmPâ(x)Â , forÂ |x|â¤1(29.23)

[3](#3)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/numerics.tex#L10072)

*Remarks*: The effect of calling each of these functions
is implementation-defined
if l >= 128[.](#3.sentence-1)
