Source: tests/expression/logical.cpp
19 #include <tests/myratest.h> 23 #ifdef MYRAMATH_ENABLE_CPP11 25 ADD_TEST(
"expr_logical",
"[expression]")
27 auto A = expr({1.0,-4.0,7.0,10.0});
28 auto B = expr({0.0,5.0,6.0,11.0});
29 REQUIRE( equals( A<B, expr({
false,
true,
false,
true}) ) );
30 REQUIRE( equals( A>B, expr({
true,
false,
true,
false}) ) );
31 REQUIRE( equals( (A<B) && (A>B), expr({
false,
false,
false,
false}) ) );
32 REQUIRE( equals( (A<B) || (A>B), expr({
true,
true,
true,
true}) ) );
33 REQUIRE( equals( (A<B)&&(A<0.0), expr({
false,
true,
false,
false}) ) );
34 REQUIRE( equals( !expr({
false,
true}), expr({
true,
false}) ) );
36 REQUIRE( frobenius( ternary(A<B,A,B) - expr({0.0,-4.0,6.0,10.0}) ) < tol );
Overloads expr() for std::vector<Number> and (C++11 only) std::initializer_list<Number> ...
An interface used to fill containers from Expression's (see Matrix::evaluate(), for example)...
Arithmetic operators (+,-,*,/) for Expression's.
Routines for computing Frobenius norms of Expression's.
Comparison operators (<,>) and logical operators (&&,||,!) for Expression's.
Results: [PASS]
Go back to Summary of /test programs.