58 Teuchos::RCP<const Thyra::ModelEvaluator<double> > model =
61 stepper->setModel(model);
62 stepper->setICConsistency(
"Consistent");
63 stepper->setUseFSAL(
true);
64 stepper->initialize();
70 stepper->setInitialConditions(solutionHistory);
71 solutionHistory->initWorkingState();
73 solutionHistory->getWorkingState()->setTimeStep(dt);
74 solutionHistory->getWorkingState()->setTime(dt);
75 stepper->takeStep(solutionHistory);
78 const double relTol = 1.0e-14;
81 auto currentState = solutionHistory->getCurrentState();
82 const double x_0 = get_ele(*(currentState->getX()), 0);
83 const double xDot_0 = get_ele(*(currentState->getXDot()), 0);
84 TEST_FLOATING_EQUALITY(x_0, 1.0, relTol);
85 TEST_FLOATING_EQUALITY(xDot_0, -1.0, relTol);
86 TEST_ASSERT(std::abs(currentState->getTime()) < relTol);
89 auto workingState = solutionHistory->getWorkingState();
90 const double x_1 = get_ele(*(workingState->getX()), 0);
91 const double xDot_1 = get_ele(*(workingState->getXDot()), 0);
93 TEST_ASSERT(std::abs(x_1) < relTol);
94 TEST_ASSERT(std::abs(xDot_1) < relTol);
95 TEST_FLOATING_EQUALITY(workingState->getTime(), 1.0, relTol);
void testRKAppAction(const Teuchos::RCP< Tempus::StepperRKBase< double > > &stepper, const Teuchos::RCP< const Thyra::ModelEvaluator< double > > &model, Teuchos::FancyOStream &out, bool &success)
Unit test utility for Stepper RK AppAction.