56 template<
typename dtype>
72 template<
typename dtype>
90 template<
typename dtype>
110 template<
typename dtype>
115 const auto function = [
rhs](std::complex<dtype>& value) -> std::complex<dtype> {
return value +=
rhs; };
130 template<
typename dtype>
135 return broadcast::broadcaster<dtype>(
lhs,
rhs, std::plus<dtype>());
146 template<
typename dtype>
152 return broadcast::broadcaster<std::complex<dtype>>(
lhs,
rhs,
function);
163 template<
typename dtype>
177 template<
typename dtype>
192 template<
typename dtype>
206 template<
typename dtype>
228 template<
typename dtype>
242 template<
typename dtype>
257 template<
typename dtype>
271 template<
typename dtype>
287 template<
typename dtype>
305 template<
typename dtype>
325 template<
typename dtype>
330 const auto function = [
rhs](std::complex<dtype>& value) -> std::complex<dtype> {
return value -=
rhs; };
345 template<
typename dtype>
350 return broadcast::broadcaster<dtype>(
lhs,
rhs, std::minus<dtype>());
361 template<
typename dtype>
367 return broadcast::broadcaster<std::complex<dtype>>(
lhs,
rhs,
function);
378 template<
typename dtype>
384 return broadcast::broadcaster<std::complex<dtype>>(
lhs,
rhs,
function);
395 template<
typename dtype>
410 template<
typename dtype>
432 template<
typename dtype>
454 template<
typename dtype>
476 template<
typename dtype>
491 template<
typename dtype>
496 const auto function = [
lhs](std::complex<dtype> value) -> std::complex<dtype> {
return lhs - value; };
511 template<
typename dtype>
529 template<
typename dtype>
545 template<
typename dtype>
563 template<
typename dtype>
583 template<
typename dtype>
588 const auto function = [
rhs](std::complex<dtype>& value) -> std::complex<dtype> {
return value *=
rhs; };
603 template<
typename dtype>
608 return broadcast::broadcaster<dtype>(
lhs,
rhs, std::multiplies<dtype>());
619 template<
typename dtype>
625 return broadcast::broadcaster<std::complex<dtype>>(
lhs,
rhs,
function);
636 template<
typename dtype>
650 template<
typename dtype>
665 template<
typename dtype>
679 template<
typename dtype>
701 template<
typename dtype>
715 template<
typename dtype>
730 template<
typename dtype>
744 template<
typename dtype>
760 template<
typename dtype>
778 template<
typename dtype>
798 template<
typename dtype>
803 const auto function = [
rhs](std::complex<dtype>& value) -> std::complex<dtype> {
return value /=
rhs; };
818 template<
typename dtype>
823 return broadcast::broadcaster<dtype>(
lhs,
rhs, std::divides<dtype>());
834 template<
typename dtype>
840 return broadcast::broadcaster<std::complex<dtype>>(
lhs,
rhs,
function);
851 template<
typename dtype>
857 return broadcast::broadcaster<std::complex<dtype>>(
lhs,
rhs,
function);
868 template<
typename dtype>
883 template<
typename dtype>
905 template<
typename dtype>
927 template<
typename dtype>
949 template<
typename dtype>
964 template<
typename dtype>
969 const auto function = [
lhs](
const std::complex<dtype>& value) -> std::complex<dtype> {
return lhs / value; };
986 template<
typename dtype, std::enable_if_t<std::is_
integral_v<dtype> || std::is_
floating_po
int_v<dtype>,
int> = 0>
989 if constexpr (std::is_integral_v<dtype>)
1009 template<
typename dtype, std::enable_if_t<std::is_
integral_v<dtype> || std::is_
floating_po
int_v<dtype>,
int> = 0>
1012 if constexpr (std::is_integral_v<dtype>)
1034 template<
typename dtype, std::enable_if_t<std::is_
integral_v<dtype> || std::is_
floating_po
int_v<dtype>,
int> = 0>
1037 if constexpr (std::is_integral_v<dtype>)
1039 return broadcast::broadcaster<dtype>(
lhs,
rhs, std::modulus<dtype>());
1056 template<
typename dtype>
1071 template<
typename dtype, std::enable_if_t<std::is_
integral_v<dtype>,
int> = 0>
1091 template<
typename dtype, std::enable_if_t<std::is_
floating_po
int_v<dtype>,
int> = 0>
1098 [
lhs](
dtype value) ->
dtype { return std::fmod(lhs, value); });
1111 template<
typename dtype>
1127 template<
typename dtype>
1147 template<
typename dtype>
1152 return broadcast::broadcaster<dtype>(
lhs,
rhs, std::bit_or<dtype>());
1163 template<
typename dtype>
1178 template<
typename dtype>
1192 template<
typename dtype>
1208 template<
typename dtype>
1228 template<
typename dtype>
1233 return broadcast::broadcaster<dtype>(
lhs,
rhs, std::bit_and<dtype>());
1244 template<
typename dtype>
1259 template<
typename dtype>
1273 template<
typename dtype>
1289 template<
typename dtype>
1309 template<
typename dtype>
1314 return broadcast::broadcaster<dtype>(
lhs,
rhs, std::bit_xor<dtype>());
1325 template<
typename dtype>
1340 template<
typename dtype>
1353 template<
typename dtype>
1375 template<
typename dtype>
1394 template<
typename dtype>
1416 template<
typename dtype>
1430 template<
typename dtype>
1449 template<
typename dtype>
1471 template<
typename dtype>
1484 template<
typename dtype>
1507 template<
typename dtype>
1525 template<
typename dtype>
1547 template<
typename dtype>
1562 template<
typename dtype>
1580 template<
typename dtype>
1602 template<
typename dtype>
1617 template<
typename dtype>
1635 template<
typename dtype>
1658 template<
typename dtype>
1681 template<
typename dtype>
1699 template<
typename dtype>
1722 template<
typename dtype>
1745 template<
typename dtype>
1763 template<
typename dtype>
1786 template<
typename dtype>
1809 template<
typename dtype>
1827 template<
typename dtype>
1850 template<
typename dtype>
1872 template<
typename dtype>
1892 template<
typename dtype>
1910 template<
typename dtype>
1930 template<
typename dtype>
1946 template<
typename dtype>
1951 const auto function = [](
dtype& value) ->
void { ++value; };
1965 template<
typename dtype>
1979 template<
typename dtype>
1984 const auto function = [](
dtype& value) ->
void { --value; };
1998 template<
typename dtype>
2014 template<
typename dtype>
#define STATIC_ASSERT_ARITHMETIC_OR_COMPLEX(dtype)
Definition StaticAsserts.hpp:56
#define STATIC_ASSERT_INTEGER(dtype)
Definition StaticAsserts.hpp:43
#define STATIC_ASSERT_ARITHMETIC(dtype)
Definition StaticAsserts.hpp:39
Holds 1D and 2D arrays, the main work horse of the NumCpp library.
Definition NdArrayCore.hpp:139
NdArray< dtypeIn1 > & broadcaster(NdArray< dtypeIn1 > &inArray1, const NdArray< dtypeIn2 > &inArray2, const Function &function, const AdditionalFunctionArgs &&... additionalFunctionArgs)
Definition NdArrayBroadcast.hpp:52
OutputIt transform(InputIt first, InputIt last, OutputIt destination, UnaryOperation unaryFunction)
Definition StlAlgorithms.hpp:775
void for_each(InputIt first, InputIt last, UnaryFunction f)
Definition StlAlgorithms.hpp:225
bool essentiallyEqual(dtype inValue1, dtype inValue2) noexcept
Definition essentiallyEqual.hpp:49
Definition Cartesian.hpp:40
NdArray< dtype > & operator^=(NdArray< dtype > &lhs, const NdArray< dtype > &rhs)
Definition NdArrayOperators.hpp:1274
bool operator==(const DateTime &lhs, const DateTime &rhs) noexcept
Equality operator for DateTime.
Definition DateTime/DateTime.hpp:473
NdArray< dtype > & operator%=(NdArray< dtype > &lhs, const NdArray< dtype > &rhs)
Definition NdArrayOperators.hpp:987
bool operator>=(const std::complex< T > &lhs, const std::complex< T > &rhs) noexcept
Definition StdComplexOperators.hpp:98
Duration operator-(const DateTime &lhs, const DateTime &rhs) noexcept
Subtraction operator.
Definition DateTime/DateTime.hpp:551
bool operator>(const std::complex< T > &lhs, const std::complex< T > &rhs) noexcept
Definition StdComplexOperators.hpp:84
NdArray< dtype > operator%(const NdArray< dtype > &lhs, const NdArray< dtype > &rhs)
Definition NdArrayOperators.hpp:1035
NdArray< dtype > operator/(const NdArray< dtype > &lhs, const NdArray< dtype > &rhs)
Definition NdArrayOperators.hpp:819
NdArray< dtype > & operator*=(NdArray< dtype > &lhs, const NdArray< dtype > &rhs)
Definition NdArrayOperators.hpp:530
NdArray< dtype > & operator++(NdArray< dtype > &rhs)
Definition NdArrayOperators.hpp:1947
NdArray< dtype > & operator/=(NdArray< dtype > &lhs, const NdArray< dtype > &rhs)
Definition NdArrayOperators.hpp:745
NdArray< dtype > & operator|=(NdArray< dtype > &lhs, const NdArray< dtype > &rhs)
Definition NdArrayOperators.hpp:1112
NdArray< dtype > & operator--(NdArray< dtype > &rhs)
Definition NdArrayOperators.hpp:1980
bool operator!=(const DateTime &lhs, const DateTime &rhs) noexcept
Non Equality operator for DateTime.
Definition DateTime/DateTime.hpp:486
NdArray< bool > operator||(const NdArray< dtype > &lhs, const NdArray< dtype > &rhs)
Definition NdArrayOperators.hpp:1431
bool operator<(const std::complex< T > &lhs, const std::complex< T > &rhs) noexcept
Definition StdComplexOperators.hpp:46
NdArray< dtype > copy(const NdArray< dtype > &inArray)
Definition copy.hpp:44
std::ostream & operator<<(std::ostream &os, Duration duration)
Output stream operator for the Duration type.
Definition Clock.hpp:30
NdArrayConstIterator< dtype, PointerType, DifferenceType > operator+(typename NdArrayConstIterator< dtype, PointerType, DifferenceType >::difference_type offset, NdArrayConstIterator< dtype, PointerType, DifferenceType > next) noexcept
Definition NdArrayIterators.hpp:302
NdArray< dtype > & operator>>=(NdArray< dtype > &lhs, uint8 inNumBits)
Definition NdArrayOperators.hpp:1911
NdArray< dtype > operator^(const NdArray< dtype > &lhs, const NdArray< dtype > &rhs)
Definition NdArrayOperators.hpp:1310
NdArray< dtype > arange(dtype inStart, dtype inStop, dtype inStep=1)
Definition arange.hpp:59
NdArray< dtype > & operator<<=(NdArray< dtype > &lhs, uint8 inNumBits)
Definition NdArrayOperators.hpp:1873
NdArray< dtype > & operator+=(NdArray< dtype > &lhs, const NdArray< dtype > &rhs)
Definition NdArrayOperators.hpp:57
NdArray< dtype > operator&(const NdArray< dtype > &lhs, const NdArray< dtype > &rhs)
Definition NdArrayOperators.hpp:1229
std::uint8_t uint8
Definition Types.hpp:42
bool operator<=(const std::complex< T > &lhs, const std::complex< T > &rhs) noexcept
Definition StdComplexOperators.hpp:65
NdArray< dtype > operator|(const NdArray< dtype > &lhs, const NdArray< dtype > &rhs)
Definition NdArrayOperators.hpp:1148
NdArray< bool > operator!(const NdArray< dtype > &inArray)
Definition NdArrayOperators.hpp:1485
NdArray< dtype > operator>>(const NdArray< dtype > &lhs, uint8 inNumBits)
Definition NdArrayOperators.hpp:1931
NdArray< dtype > & operator&=(NdArray< dtype > &lhs, const NdArray< dtype > &rhs)
Definition NdArrayOperators.hpp:1193
NdArray< dtype > & operator-=(NdArray< dtype > &lhs, const NdArray< dtype > &rhs)
Definition NdArrayOperators.hpp:272
NdArray< bool > operator&&(const NdArray< dtype > &lhs, const NdArray< dtype > &rhs)
Definition NdArrayOperators.hpp:1376
NdArray< dtype > operator~(const NdArray< dtype > &inArray)
Definition NdArrayOperators.hpp:1354
NdArray< dtype > operator*(const NdArray< dtype > &lhs, const NdArray< dtype > &rhs)
Definition NdArrayOperators.hpp:604