Tempus Version of the Day
Time Integration
Loading...
Searching...
No Matches
Tempus_UnitTest_SDIRK_5Stage5thOrder.cpp
Go to the documentation of this file.
1// @HEADER
2// ****************************************************************************
3// Tempus: Copyright (2017) Sandia Corporation
4//
5// Distributed under BSD 3-clause license (See accompanying file Copyright.txt)
6// ****************************************************************************
7// @HEADER
8
10
11
12namespace Tempus_Unit_Test {
13
14using Teuchos::RCP;
15using Teuchos::rcp;
16using Teuchos::rcp_const_cast;
17using Teuchos::rcp_dynamic_cast;
18using Teuchos::ParameterList;
19using Teuchos::sublist;
20
21
22// ************************************************************
23// ************************************************************
24TEUCHOS_UNIT_TEST(SDIRK_5Stage5thOrder, Default_Construction)
25{
26 auto stepper = rcp(new Tempus::StepperSDIRK_5Stage5thOrder<double>());
28
29 // Test stepper properties.
30 TEUCHOS_ASSERT(stepper->getOrder() == 5);
31}
32
33
34// ************************************************************
35// ************************************************************
36TEUCHOS_UNIT_TEST(SDIRK_5Stage5thOrder, StepperFactory_Construction)
37{
38 auto model = rcp(new Tempus_Test::SinCosModel<double>());
39 testFactoryConstruction("SDIRK 5 Stage 5th order", model);
40}
41
42
43// ************************************************************
44// ************************************************************
45TEUCHOS_UNIT_TEST(SDIRK_5Stage5thOrder, StageNumber)
46{
47 auto stepper = rcp(new Tempus::StepperSDIRK_5Stage5thOrder<double>());
48 int stageNumber = 4;
49 stepper->setStageNumber(stageNumber);
50 int s = stepper->getStageNumber();
51 TEST_COMPARE(s, ==, stageNumber);
52}
53
54
55// ************************************************************
56// ************************************************************
57TEUCHOS_UNIT_TEST(SDIRK_5Stage5thOrder, AppAction)
58{
59 auto stepper = rcp(new Tempus::StepperSDIRK_5Stage5thOrder<double>());
60 auto model = rcp(new Tempus_Test::SinCosModel<double>());
61 testRKAppAction(stepper, model, out, success);
62}
63
64
65} // namespace Tempus_Test
Sine-Cosine model problem from Rythmos. This is a canonical Sine-Cosine differential equation.
void testDIRKAccessorsFullConstruction(const RCP< Tempus::StepperDIRK< double > > &stepper)
Unit test utility for ExplicitRK Stepper construction and accessors.
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.
TEUCHOS_UNIT_TEST(BackwardEuler, Default_Construction)
void testFactoryConstruction(std::string stepperType, const Teuchos::RCP< const Thyra::ModelEvaluator< double > > &model)
Unit test utility for Stepper construction through StepperFactory.