|
TRIQS/TRIQS 4.0.0
Researching Interacting Quantum Systems
|
#include "./is_complex.hpp"#include <cmath>#include <complex>#include <concepts>#include <limits>Numeric helpers overloaded for various types.
Definition in file numeric_ops.hpp.
Go to the source code of this file.
Functions | |
| template<std::integral I> | |
| I | triqs::utility::conj (I const &x) |
| Complex conjugate of an integral value. | |
| template<std::floating_point T> | |
| T | triqs::utility::conj (T const &x) |
| Complex conjugate of a floating-point value. | |
| template<typename Z> requires (triqs::is_complex<Z>::value) | |
| Z | triqs::utility::conj (Z const &z) |
| Complex conjugate of a complex value. | |
| template<std::integral I> | |
| I | triqs::utility::imag (I const &x) |
| Imaginary part of an integral value. | |
| template<std::floating_point T> | |
| T | triqs::utility::imag (T const &x) |
| Imaginary part of a floating-point value. | |
| template<typename Z> requires (triqs::is_complex<Z>::value) | |
| Z | triqs::utility::imag (Z const &z) |
| Imaginary part of a complex value. | |
| template<std::integral I> | |
| bool | triqs::utility::is_zero (I const &x) |
| Exact zero check for integral values. | |
| template<typename T> | |
| bool | triqs::utility::is_zero (std::complex< T > const &z, T tolerance=100 *std::numeric_limits< T >::epsilon()) |
| Zero check for complex values. | |
| template<std::floating_point T> | |
| bool | triqs::utility::is_zero (T const &x, T tolerance=100 *std::numeric_limits< T >::epsilon()) |
| Zero check for floating-point values. | |
| template<std::integral I> | |
| I | triqs::utility::real (I const &x) |
| Real part of an integral value. | |
| template<std::floating_point T> | |
| T | triqs::utility::real (T const &x) |
| Real part of a floating-point value. | |
| template<typename Z> requires (triqs::is_complex<Z>::value) | |
| Z | triqs::utility::real (Z const &z) |
| Real part of a complex value. | |