TRIQS/nda 1.3.0
Multi-dimensional array library for C++
Loading...
Searching...
No Matches
math.hpp
Go to the documentation of this file.
1// Copyright (c) 2020--present, The Simons Foundation
2// This file is part of TRIQS/nda and is licensed under the Apache License, Version 2.0.
3// SPDX-License-Identifier: Apache-2.0
4// See LICENSE in the root of this distribution for details.
5
10
11#pragma once
12
13#include "../clef.hpp"
14
15#include <cmath>
16#include <complex>
17
18namespace nda::clef {
19
24
25#define CLEF_MAKE_STD_FNT_LAZY(name) \
26 using std::name; \
27 \
28 CLEF_MAKE_FNT_LAZY(name)
29
30 // FIXME use vim generation
31 CLEF_MAKE_STD_FNT_LAZY(cos)
32 CLEF_MAKE_STD_FNT_LAZY(sin)
33 CLEF_MAKE_STD_FNT_LAZY(tan)
34 CLEF_MAKE_STD_FNT_LAZY(cosh)
35 CLEF_MAKE_STD_FNT_LAZY(sinh)
36 CLEF_MAKE_STD_FNT_LAZY(tanh)
37 CLEF_MAKE_STD_FNT_LAZY(acos)
38 CLEF_MAKE_STD_FNT_LAZY(asin)
39 CLEF_MAKE_STD_FNT_LAZY(atan)
40 CLEF_MAKE_STD_FNT_LAZY(exp)
41 CLEF_MAKE_STD_FNT_LAZY(log)
42 CLEF_MAKE_STD_FNT_LAZY(sqrt)
43 CLEF_MAKE_STD_FNT_LAZY(abs)
44 CLEF_MAKE_STD_FNT_LAZY(floor)
45 CLEF_MAKE_STD_FNT_LAZY(pow)
46 CLEF_MAKE_STD_FNT_LAZY(conj)
47
49
50} // namespace nda::clef
Includes all relevant headers for the core clef library.
auto floor(A &&...__a)
Lazy version of std::floor.
Definition math.hpp:44
auto sin(A &&...__a)
Lazy version of std::sin.
Definition math.hpp:32
auto conj(A &&...__a)
Lazy version of std::conj.
Definition math.hpp:46
auto abs(A &&...__a)
Lazy version of std::abs.
Definition math.hpp:43
auto tan(A &&...__a)
Lazy version of std::tan.
Definition math.hpp:33
auto log(A &&...__a)
Lazy version of std::log.
Definition math.hpp:41
auto sinh(A &&...__a)
Lazy version of std::sinh.
Definition math.hpp:35
auto sqrt(A &&...__a)
Lazy version of std::sqrt.
Definition math.hpp:42
auto atan(A &&...__a)
Lazy version of std::atan.
Definition math.hpp:39
auto exp(A &&...__a)
Lazy version of std::exp.
Definition math.hpp:40
auto pow(A &&...__a)
Lazy version of std::pow.
Definition math.hpp:45
auto cos(A &&...__a)
Lazy version of std::cos.
Definition math.hpp:31
auto tanh(A &&...__a)
Lazy version of std::tanh.
Definition math.hpp:36
auto asin(A &&...__a)
Lazy version of std::asin.
Definition math.hpp:38
auto cosh(A &&...__a)
Lazy version of std::cosh.
Definition math.hpp:34
auto acos(A &&...__a)
Lazy version of std::acos.
Definition math.hpp:37