<T>LAPACK 0.1.1
C++ Template Linear Algebra PACKage
Loading...
Searching...
No Matches
Real Interface Reference

Concept for real scalar types. More...

#include <concepts.hpp>

Detailed Description

Concept for real scalar types.

A real type is an ordered type that supports arithmetic operations. Moreover,

  • it must be constructible from integer and floating-points. It must also be constructible from a default constructor that takes no arguments.
  • it must implement the copy assignment operator =.
  • it must support the math operators abs(), sqrt(), pow(int,), log2(), ceil(), and floor(). Those functions must be callable from the namespace tlapack.
  • it must support the boolean functions isinf() and isnan(), which must be callable from the namespace tlapack.
  • it must implement the functions min(T,T) and max(T,T) to decide the minimum and maximum in a pair of values.
  • it must have a specialization of std::numeric_limits<>.
Template Parameters
TType.
Note
Note that the functions min() and max() may not propagate NaNs. The implementation in the C++ standard library says nothing about NaN propagation in std::min() and std::max() and we follow the same rule. The C++ documentation shows possible implementations that do not propagate NaNs. See: https://en.cppreference.com/w/cpp/algorithm/max and https://en.cppreference.com/w/cpp/algorithm/min.

The documentation for this interface was generated from the following file: