37 urand(0.0, 1.0), n(5), tol_a(1.0e-15), tol_r(1.0e-14) {}
40 double absolute_tolerance,
41 double relative_tolerance) :
44 tol_a(absolute_tolerance),
45 tol_r(relative_tolerance) {}
62 for (
int i=0; i<
n; i++) {
65 a_ls.fastAccessDx(i) = 1;
69 b_ls.fastAccessDx(i) = 1;
79 CPPUNIT_ASSERT(x_dfad.size() == x_ls.size());
82 CPPUNIT_ASSERT(x_dfad.hasFastAccess() == x_ls.hasFastAccess());
87 for (
int i=0; i<x_ls.size(); i++) {
93 compareDx(x_dfad.fastAccessDx(i), x_ls.fastAccessDx(i));
102 CPPUNIT_ASSERT(
a == b );
106 CPPUNIT_ASSERT( (
a && b) || !(
a || b) );
116 for (
int i=0; i<
n; i++) {
122 for (
int i=0; i<
n; i++) {
130 for (
int i=0; i<
n; i++) {
136 for (
int i=0; i<
n; i++) {
144 for (
int i=0; i<
n; i++) {
152 for (
int i=0; i<
n; i++) {
158 for (
int i=0; i<
n; i++) {
167 for (
int i=0; i<
n; i++)
172 for (
int i=0; i<
n; i++) {
179 for (
int i=0; i<
n; i++)
184 for (
int i=0; i<
n; i++) {
193 for (
int i=0; i<
n; i++) {
199 for (
int i=0; i<
n; i++) {
213 for (
int i=0; i<
n; i++) {
219 for (
int i=0; i<
n; i++) {
227 for (
int i=0; i<
n; i++) {
233 for (
int i=0; i<
n; i++) {
241 for (
int i=0; i<
n; i++) {
249 for (
int i=0; i<
n; i++) {
255 for (
int i=0; i<
n; i++) {
264 for (
int i=0; i<
n; i++)
269 for (
int i=0; i<
n; i++) {
276 for (
int i=0; i<
n; i++)
281 for (
int i=0; i<
n; i++) {
290 for (
int i=0; i<
n; i++) {
296 for (
int i=0; i<
n; i++) {
void compareDoubles(double a, double b)
void compareDx(double a, bool b)
LogicalSparseOpsUnitTest()
Sacado::Fad::DFad< double > DFadType
void compareBools(bool a, bool b)
ScalarT number()
Get random number.
CPPUNIT_TEST_SUITE_REGISTRATION(LogicalSparseOpsUnitTest)
SimpleFad< ValueT > min(const SimpleFad< ValueT > &a, const SimpleFad< ValueT > &b)
SimpleFad< ValueT > max(const SimpleFad< ValueT > &a, const SimpleFad< ValueT > &b)
KOKKOS_INLINE_FUNCTION Expr< FAbsOp< Expr< T > > > fabs(const Expr< T > &expr)
Sacado::LFad::LogicalSparse< double, bool > LSType
Sacado::Random< double > urand
void compareFads(const DFadType &x_dfad, const LSType &x_ls)