Files
2025-10-25 03:02:53 +03:00

6.2 KiB
Raw Permalink Blame History

[simd.complex.math]

29 Numerics library [numerics]

29.10 Data-parallel types [simd]

29.10.8 basic_vec non-member operations [simd.nonmembers]

29.10.8.15 vec complex math [simd.complex.math]

🔗

`template<simd-complex V> constexpr rebind_t<simd-complex-value-type, V> real(const V&) noexcept; template<simd-complex V> constexpr rebind_t<simd-complex-value-type, V> imag(const V&) noexcept;

template<simd-complex V> constexpr rebind_t<simd-complex-value-type, V> abs(const V&); template<simd-complex V> constexpr rebind_t<simd-complex-value-type, V> arg(const V&); template<simd-complex V> constexpr rebind_t<simd-complex-value-type, V> norm(const V&); template<simd-complex V> constexpr V conj(const V&); template<simd-complex V> constexpr V proj(const V&);

template<simd-complex V> constexpr V exp(const V& v); template<simd-complex V> constexpr V log(const V& v); template<simd-complex V> constexpr V log10(const V& v);

template<simd-complex V> constexpr V sqrt(const V& v); template<simd-complex V> constexpr V sin(const V& v); template<simd-complex V> constexpr V asin(const V& v); template<simd-complex V> constexpr V cos(const V& v); template<simd-complex V> constexpr V acos(const V& v); template<simd-complex V> constexpr V tan(const V& v); template<simd-complex V> constexpr V atan(const V& v); template<simd-complex V> constexpr V sinh(const V& v); template<simd-complex V> constexpr V asinh(const V& v); template<simd-complex V> constexpr V cosh(const V& v); template<simd-complex V> constexpr V acosh(const V& v); template<simd-complex V> constexpr V tanh(const V& v); template<simd-complex V> constexpr V atanh(const V& v); `

1

#

Returns: A basic_vec object ret where the ith element is initialized to the result of cmplx-func(v[i]) for alli in the range [0, V::size()), where cmplx-func is the corresponding function from .

If in an invocation ofcmplx-func for index i a domain, pole, or range error would occur, the value of ret[i] is unspecified.

2

#

Remarks: It is unspecified whether errno ([errno]) is accessed.

🔗

`template<simd-floating-point V> rebind_t<complex, V> polar(const V& x, const V& y = {});

template<simd-complex V> constexpr V pow(const V& x, const V& y); `

3

#

Returns: A basic_vec object ret where the ith element is initialized to the result of cmplx-func(x[i], y[i]) for all i in the range [0, V::size()), where cmplx-func is the corresponding function from .

If in an invocation ofcmplx-func for index i a domain, pole, or range error would occur, the value of ret[i] is unspecified.

4

#

Remarks: It is unspecified whether errno ([errno]) is accessed.