26  Teuchos::RCP<const Thyra::VectorSpaceBase<double> > xSpace =
 
   27      Thyra::defaultSpmdVectorSpace<double>(N);
 
   28  auto x     = Thyra::createMember(xSpace);
 
   29  auto xNext = Thyra::createMember(xSpace);
 
   30  auto eVec  = Thyra::createMember(xSpace);
 
   32  auto tol   = Tempus::numericalTol<double>();
 
   35  Thyra::assign(x.ptr(), 0.0);
 
   36  Thyra::assign(xNext.ptr(), 0.0);
 
   37  Thyra::assign(eVec.ptr(), 0.0);
 
   38  double rmsNorm = eNorm->computeWRMSNorm(x, xNext, eVec);
 
   39  TEST_FLOATING_EQUALITY(rmsNorm, 0.0, 1.0e-12);
 
   41  Thyra::assign(x.ptr(), 1.0);
 
   42  Thyra::assign(xNext.ptr(), 1.0 + tol);
 
   43  Thyra::assign(eVec.ptr(), tol);
 
   44  rmsNorm = eNorm->computeWRMSNorm(x, xNext, eVec);
 
   45  TEST_FLOATING_EQUALITY(rmsNorm, 1.0 / std::sqrt(N), 1.0e-12);
 
 
   52  Teuchos::RCP<const Thyra::VectorSpaceBase<double> > xSpace =
 
   53      Thyra::defaultSpmdVectorSpace<double>(3);
 
   54  auto x = Thyra::createMember(xSpace);
 
   56  auto tol   = Tempus::numericalTol<double>();
 
   59  Thyra::assign(x.ptr(), 0.0);
 
   60  double norm = eNorm->errorNorm(x);
 
   61  TEST_FLOATING_EQUALITY(norm, tol, 1.0e-12);
 
   63  Thyra::assign(x.ptr(), 1.0);
 
   64  norm = eNorm->errorNorm(x);
 
   65  TEST_FLOATING_EQUALITY(norm, 1.0 / (2.0 * tol), 1.0e-12);