12 #include "Tempus_TimeEventRange.hpp"
13 #include "Tempus_TimeEventRangeIndex.hpp"
14 #include "Tempus_TimeEventList.hpp"
15 #include "Tempus_TimeEventListIndex.hpp"
17 static double PI = M_PI;
19 namespace Tempus_Unit_Test {
23 using Teuchos::rcp_const_cast;
24 using Teuchos::rcp_dynamic_cast;
31 0.0,
PI, 1.0,
"teRange1",
true, 1.0e-14));
38 -
PI / 2.0,
PI / 2.0,
PI / 4.0,
"teRange2",
true, 1.0e-14));
45 4.0, 10.0, 4.0,
"teRange3",
true, 1.0e-14));
53 std::vector<double> testList1;
54 testList1.push_back(-1.0);
55 testList1.push_back(0.0);
56 testList1.push_back(5.0);
57 testList1.push_back(2.0);
58 testList1.push_back(
PI);
67 std::vector<double> testList2;
68 testList2.push_back(-0.5);
69 testList2.push_back(1.25);
70 testList2.push_back(4.95);
71 testList2.push_back(12.34);
80 std::vector<double> testList3;
81 testList3.push_back(-5.0);
82 testList3.push_back(-
PI);
102 return teRangeIndex2;
109 return teRangeIndex3;
116 std::vector<int> testListIndex1;
117 testListIndex1.push_back(-2);
118 testListIndex1.push_back(0);
119 testListIndex1.push_back(7);
120 testListIndex1.push_back(3);
121 testListIndex1.push_back(-5);
123 auto teListIndex1 =
rcp(
130 std::vector<int> testListIndex2;
131 testListIndex2.push_back(2);
133 auto teListIndex2 =
rcp(
140 std::vector<int> testListIndex3;
141 testListIndex3.push_back(14);
142 testListIndex3.push_back(9);
144 auto teListIndex3 =
rcp(
166 TEST_COMPARE(tec->indexToNextEvent(0), ==, tec->getDefaultIndex());
167 TEST_COMPARE(tec->indexOfNextEvent(0), ==, tec->getDefaultIndex());
170 auto timeEvents = tec->getTimeEvents();
178 std::vector<Teuchos::RCP<Tempus::TimeEventBase<double> > > timeEvents;
185 timeEvents,
"Test TimeEventComposite"));
189 TEST_COMPARE(tec->getName(), ==,
"Test TimeEventComposite");
205 TEST_COMPARE(tec->indexToNextEvent(9), ==, tec->getDefaultIndex() - 9);
216 TEST_COMPARE(tec->indexOfNextEvent(9), ==, tec->getDefaultIndex());
224 TEST_COMPARE(tec->eventInRangeIndex(-8, -6), ==,
false);
228 TEST_COMPARE(tec->eventInRangeIndex(12, 14), ==,
false);
230 timeEvents = tec->getTimeEvents();
238 std::vector<Teuchos::RCP<Tempus::TimeEventBase<double> > > timeEvents;
246 tec->setTimeEvents(timeEvents);
248 auto timeEventsSet = tec->getTimeEvents();
267 auto timeEvents = tec->getTimeEvents();
288 auto timeEvents = tec->getTimeEvents();
318 auto timeEvents = tec->getTimeEvents();
337 auto timeEvents = tec->getTimeEvents();
358 auto timeEvents = tec->getTimeEvents();
387 auto timeEvents = tec->getTimeEvents();
398 tec->add(teRangeIndex1);
406 auto timeEvents = tec->getTimeEvents();
418 tec->add(teRangeIndex1);
419 tec->add(teRangeIndex2);
427 auto timeEvents = tec->getTimeEvents();
439 tec->add(teRangeIndex3);
440 tec->add(teRangeIndex2);
447 TEST_COMPARE(tec->indexOfNextEvent(16), ==, tec->getDefaultIndex());
448 TEST_COMPARE(tec->eventInRangeIndex(-3, -2), ==,
false);
453 TEST_COMPARE(tec->eventInRangeIndex(10, 13), ==,
false);
456 auto timeEvents = tec->getTimeEvents();
467 tec->add(teListIndex1);
475 auto timeEvents = tec->getTimeEvents();
487 tec->add(teListIndex1);
488 tec->add(teListIndex2);
496 auto timeEvents = tec->getTimeEvents();
508 tec->add(teListIndex3);
509 tec->add(teListIndex2);
515 TEST_COMPARE(tec->indexOfNextEvent(19), ==, tec->getDefaultIndex());
518 TEST_COMPARE(tec->eventInRangeIndex(15, 20), ==,
false);
520 auto timeEvents = tec->getTimeEvents();
536 tec->add(teRangeIndex1);
537 tec->add(teListIndex1);
554 TEST_COMPARE(tec->indexToNextEvent(9), ==, tec->getDefaultIndex() - 9);
565 TEST_COMPARE(tec->indexOfNextEvent(9), ==, tec->getDefaultIndex());
573 TEST_COMPARE(tec->eventInRangeIndex(-8, -6), ==,
false);
577 TEST_COMPARE(tec->eventInRangeIndex(12, 14), ==,
false);
579 auto timeEvents = tec->getTimeEvents();
595 tec->add(teRangeIndex1);
596 tec->add(teListIndex1);
600 std::vector<Teuchos::RCP<Tempus::TimeEventBase<double> > > teCons;
606 TEST_COMPARE(tec->isTime(-1.0, teCons), ==,
true);
607 TEST_COMPARE(teCons.size(), ==, 1);
608 TEST_COMPARE(teCons[0]->getName(), ==,
"teList1");
610 TEST_COMPARE(tec->isIndex(2, teCons), ==,
true);
611 TEST_COMPARE(teCons.size(), ==, 1);
612 TEST_COMPARE(teCons[0]->getName(), ==,
"teRangeIndex1");
614 TEST_COMPARE(tec->isIndex(-2, teCons), ==,
true);
615 TEST_COMPARE(teCons.size(), ==, 1);
616 TEST_COMPARE(teCons[0]->getName(), ==,
"teListIndex1");
619 TEST_COMPARE(teCons.size(), ==, 1);
620 TEST_COMPARE(teCons[0]->getName(), ==,
"teList1");
623 TEST_COMPARE(teCons.size(), ==, 1);
624 TEST_COMPARE(teCons[0]->getName(), ==,
"teRange1");
627 TEST_COMPARE(teCons.size(), ==, 1);
628 TEST_COMPARE(teCons[0]->getName(), ==,
"teList1");
631 tec->getDefaultTime(), 1.0e-14);
632 TEST_COMPARE(teCons.size(), ==, 0);
634 TEST_COMPARE(tec->indexToNextEvent(-6, teCons), ==, 1);
635 TEST_COMPARE(teCons.size(), ==, 1);
636 TEST_COMPARE(teCons[0]->getName(), ==,
"teListIndex1");
638 TEST_COMPARE(tec->indexToNextEvent(1, teCons), ==, 1);
639 TEST_COMPARE(teCons.size(), ==, 1);
640 TEST_COMPARE(teCons[0]->getName(), ==,
"teRangeIndex1");
642 TEST_COMPARE(tec->indexToNextEvent(7, teCons), ==, 1);
643 TEST_COMPARE(teCons.size(), ==, 1);
644 TEST_COMPARE(teCons[0]->getName(), ==,
"teRangeIndex1");
646 TEST_COMPARE(tec->indexToNextEvent(9, teCons), ==,
647 tec->getDefaultIndex() - 9);
648 TEST_COMPARE(teCons.size(), ==, 0);
651 TEST_COMPARE(teCons.size(), ==, 1);
652 TEST_COMPARE(teCons[0]->getName(), ==,
"teList1");
655 TEST_COMPARE(teCons.size(), ==, 2);
656 TEST_COMPARE(teCons[0]->getName(), ==,
"teRange1");
657 TEST_COMPARE(teCons[1]->getName(), ==,
"teList1");
660 TEST_COMPARE(teCons.size(), ==, 1);
661 TEST_COMPARE(teCons[0]->getName(), ==,
"teRange1");
664 tec->getDefaultTime(), 1.0e-14);
665 TEST_COMPARE(teCons.size(), ==, 0);
667 TEST_COMPARE(tec->indexOfNextEvent(-6, teCons), ==, -5);
668 TEST_COMPARE(teCons.size(), ==, 1);
669 TEST_COMPARE(teCons[0]->getName(), ==,
"teListIndex1");
671 TEST_COMPARE(tec->indexOfNextEvent(1, teCons), ==, 2);
672 TEST_COMPARE(teCons.size(), ==, 1);
673 TEST_COMPARE(teCons[0]->getName(), ==,
"teRangeIndex1");
675 TEST_COMPARE(tec->indexOfNextEvent(7, teCons), ==, 8);
676 TEST_COMPARE(teCons.size(), ==, 1);
677 TEST_COMPARE(teCons[0]->getName(), ==,
"teRangeIndex1");
679 TEST_COMPARE(tec->indexOfNextEvent(9, teCons), ==, tec->getDefaultIndex());
680 TEST_COMPARE(teCons.size(), ==, 0);
682 TEST_COMPARE(tec->eventInRange(-5.0, -2.0, teCons), ==,
false);
683 TEST_COMPARE(teCons.size(), ==, 0);
684 TEST_COMPARE(tec->eventInRange(-2.0, -0.5, teCons), ==,
true);
685 TEST_COMPARE(teCons.size(), ==, 1);
686 TEST_COMPARE(tec->eventInRange(1.2, 1.8, teCons), ==,
false);
687 TEST_COMPARE(teCons.size(), ==, 0);
688 TEST_COMPARE(tec->eventInRange(3.1, 4.0, teCons), ==,
true);
689 TEST_COMPARE(teCons.size(), ==, 1);
690 TEST_COMPARE(tec->eventInRange(4.5, 6.0, teCons), ==,
true);
691 TEST_COMPARE(teCons.size(), ==, 1);
693 TEST_COMPARE(tec->eventInRangeIndex(-8, -6, teCons), ==,
false);
694 TEST_COMPARE(teCons.size(), ==, 0);
695 TEST_COMPARE(tec->eventInRangeIndex(1, 1, teCons), ==,
false);
696 TEST_COMPARE(teCons.size(), ==, 0);
697 TEST_COMPARE(tec->eventInRangeIndex(5, 7, teCons), ==,
true);
698 TEST_COMPARE(teCons.size(), ==, 1);
699 TEST_COMPARE(tec->eventInRangeIndex(8, 10, teCons), ==,
false);
700 TEST_COMPARE(teCons.size(), ==, 0);
701 TEST_COMPARE(tec->eventInRangeIndex(12, 14, teCons), ==,
false);
702 TEST_COMPARE(teCons.size(), ==, 0);
704 auto timeEvents = tec->getTimeEvents();
705 TEST_COMPARE(timeEvents.size(), ==, 4);
718 std::vector<double> testList1;
719 testList1.push_back(0.0);
720 testList1.push_back(4.0);
721 testList1.push_back(5.0);
722 testList1.push_back(9.0);
723 testList1.push_back(20.0);
727 std::vector<double> testList2;
728 testList2.push_back(0.0);
729 testList2.push_back(3.0);
730 testList2.push_back(5.0);
731 testList2.push_back(13.0);
732 testList2.push_back(20.0);
741 std::vector<int> testListIndex1;
742 testListIndex1.push_back(0);
743 testListIndex1.push_back(40);
744 testListIndex1.push_back(50);
745 testListIndex1.push_back(90);
746 testListIndex1.push_back(200);
750 std::vector<int> testListIndex2;
751 testListIndex2.push_back(0);
752 testListIndex2.push_back(30);
753 testListIndex2.push_back(50);
754 testListIndex2.push_back(130);
755 testListIndex2.push_back(200);
772 std::vector<Teuchos::RCP<Tempus::TimeEventBase<double> > > teCons;
777 TEST_COMPARE(teCons[1]->getName(), ==,
"ter2");
778 TEST_COMPARE(teCons[2]->getName(), ==,
"tel1");
779 TEST_COMPARE(teCons[3]->getName(), ==,
"tel2");
781 TEST_COMPARE(tec->isTime(5.0, teCons), ==,
true);
782 TEST_COMPARE(teCons.size(), ==, 3);
783 TEST_COMPARE(teCons[0]->getName(), ==,
"ter1");
784 TEST_COMPARE(teCons[1]->getName(), ==,
"tel1");
785 TEST_COMPARE(teCons[2]->getName(), ==,
"tel2");
787 TEST_COMPARE(tec->isTime(10.0, teCons), ==,
true);
788 TEST_COMPARE(teCons.size(), ==, 2);
789 TEST_COMPARE(teCons[0]->getName(), ==,
"ter1");
790 TEST_COMPARE(teCons[1]->getName(), ==,
"ter2");
792 TEST_COMPARE(tec->isTime(20.0, teCons), ==,
true);
793 TEST_COMPARE(teCons.size(), ==, 4);
794 TEST_COMPARE(teCons[0]->getName(), ==,
"ter1");
795 TEST_COMPARE(teCons[1]->getName(), ==,
"ter2");
796 TEST_COMPARE(teCons[2]->getName(), ==,
"tel1");
797 TEST_COMPARE(teCons[3]->getName(), ==,
"tel2");
799 TEST_COMPARE(tec->isIndex(0, teCons), ==,
true);
800 TEST_COMPARE(teCons.size(), ==, 4);
801 TEST_COMPARE(teCons[0]->getName(), ==,
"teri1");
802 TEST_COMPARE(teCons[1]->getName(), ==,
"teri2");
803 TEST_COMPARE(teCons[2]->getName(), ==,
"teli1");
804 TEST_COMPARE(teCons[3]->getName(), ==,
"teli2");
806 TEST_COMPARE(tec->isIndex(50, teCons), ==,
true);
807 TEST_COMPARE(teCons.size(), ==, 3);
808 TEST_COMPARE(teCons[0]->getName(), ==,
"teri1");
809 TEST_COMPARE(teCons[1]->getName(), ==,
"teli1");
810 TEST_COMPARE(teCons[2]->getName(), ==,
"teli2");
812 TEST_COMPARE(tec->isIndex(100, teCons), ==,
true);
813 TEST_COMPARE(teCons.size(), ==, 2);
814 TEST_COMPARE(teCons[0]->getName(), ==,
"teri1");
815 TEST_COMPARE(teCons[1]->getName(), ==,
"teri2");
817 TEST_COMPARE(tec->isIndex(200, teCons), ==,
true);
818 TEST_COMPARE(teCons.size(), ==, 4);
819 TEST_COMPARE(teCons[0]->getName(), ==,
"teri1");
820 TEST_COMPARE(teCons[1]->getName(), ==,
"teri2");
821 TEST_COMPARE(teCons[2]->getName(), ==,
"teli1");
822 TEST_COMPARE(teCons[3]->getName(), ==,
"teli2");
825 TEST_COMPARE(teCons.size(), ==, 4);
826 TEST_COMPARE(teCons[0]->getName(), ==,
"ter1");
827 TEST_COMPARE(teCons[1]->getName(), ==,
"ter2");
828 TEST_COMPARE(teCons[2]->getName(), ==,
"tel1");
829 TEST_COMPARE(teCons[3]->getName(), ==,
"tel2");
832 TEST_COMPARE(teCons.size(), ==, 3);
833 TEST_COMPARE(teCons[0]->getName(), ==,
"ter1");
834 TEST_COMPARE(teCons[1]->getName(), ==,
"tel1");
835 TEST_COMPARE(teCons[2]->getName(), ==,
"tel2");
838 TEST_COMPARE(teCons.size(), ==, 2);
839 TEST_COMPARE(teCons[0]->getName(), ==,
"ter1");
840 TEST_COMPARE(teCons[1]->getName(), ==,
"ter2");
843 TEST_COMPARE(teCons.size(), ==, 4);
844 TEST_COMPARE(teCons[0]->getName(), ==,
"ter1");
845 TEST_COMPARE(teCons[1]->getName(), ==,
"ter2");
846 TEST_COMPARE(teCons[2]->getName(), ==,
"tel1");
847 TEST_COMPARE(teCons[3]->getName(), ==,
"tel2");
849 TEST_COMPARE(tec->indexOfNextEvent(-1, teCons), ==, 0);
850 TEST_COMPARE(teCons.size(), ==, 4);
851 TEST_COMPARE(teCons[0]->getName(), ==,
"teri1");
852 TEST_COMPARE(teCons[1]->getName(), ==,
"teri2");
853 TEST_COMPARE(teCons[2]->getName(), ==,
"teli1");
854 TEST_COMPARE(teCons[3]->getName(), ==,
"teli2");
856 TEST_COMPARE(tec->indexOfNextEvent(40, teCons), ==, 50);
857 TEST_COMPARE(teCons.size(), ==, 3);
858 TEST_COMPARE(teCons[0]->getName(), ==,
"teri1");
859 TEST_COMPARE(teCons[1]->getName(), ==,
"teli1");
860 TEST_COMPARE(teCons[2]->getName(), ==,
"teli2");
862 TEST_COMPARE(tec->indexOfNextEvent(90, teCons), ==, 100);
863 TEST_COMPARE(teCons.size(), ==, 2);
864 TEST_COMPARE(teCons[0]->getName(), ==,
"teri1");
865 TEST_COMPARE(teCons[1]->getName(), ==,
"teri2");
867 TEST_COMPARE(tec->indexOfNextEvent(190, teCons), ==, 200);
868 TEST_COMPARE(teCons.size(), ==, 4);
869 TEST_COMPARE(teCons[0]->getName(), ==,
"teri1");
870 TEST_COMPARE(teCons[1]->getName(), ==,
"teri2");
871 TEST_COMPARE(teCons[2]->getName(), ==,
"teli1");
872 TEST_COMPARE(teCons[3]->getName(), ==,
"teli2");
875 TEST_COMPARE(tec->eventInRange(-1.0, 21.0, teCons), ==,
true);
876 TEST_COMPARE(teCons.size(), ==, 4);
877 TEST_COMPARE(teCons[0]->getName(), ==,
"ter1");
878 TEST_COMPARE(teCons[1]->getName(), ==,
"ter2");
879 TEST_COMPARE(teCons[2]->getName(), ==,
"tel1");
880 TEST_COMPARE(teCons[3]->getName(), ==,
"tel2");
883 TEST_COMPARE(tec->eventInRange(0.0, 21.0, teCons), ==,
true);
884 TEST_COMPARE(teCons.size(), ==, 4);
885 TEST_COMPARE(teCons[0]->getName(), ==,
"ter2");
887 TEST_COMPARE(teCons[1]->getName(), ==,
"tel2");
889 TEST_COMPARE(teCons[2]->getName(), ==,
"tel1");
891 TEST_COMPARE(teCons[3]->getName(), ==,
"ter1");
894 TEST_COMPARE(tec->eventInRange(7.0, 21.0, teCons), ==,
true);
895 TEST_COMPARE(teCons.size(), ==, 4);
896 TEST_COMPARE(teCons[0]->getName(), ==,
"ter2");
898 TEST_COMPARE(teCons[1]->getName(), ==,
"tel1");
900 TEST_COMPARE(teCons[2]->getName(), ==,
"ter1");
902 TEST_COMPARE(teCons[3]->getName(), ==,
"tel2");
905 TEST_COMPARE(tec->eventInRange(19.0, 21.0, teCons), ==,
true);
906 TEST_COMPARE(teCons.size(), ==, 4);
907 TEST_COMPARE(teCons[0]->getName(), ==,
"ter1");
909 TEST_COMPARE(teCons[1]->getName(), ==,
"ter2");
911 TEST_COMPARE(teCons[2]->getName(), ==,
"tel1");
913 TEST_COMPARE(teCons[3]->getName(), ==,
"tel2");
917 TEST_COMPARE(tec->eventInRangeIndex(-10, 210, teCons), ==,
true);
918 TEST_COMPARE(teCons.size(), ==, 4);
919 TEST_COMPARE(teCons[0]->getName(), ==,
"teri1");
920 TEST_COMPARE(teCons[1]->getName(), ==,
"teri2");
921 TEST_COMPARE(teCons[2]->getName(), ==,
"teli1");
922 TEST_COMPARE(teCons[3]->getName(), ==,
"teli2");
925 TEST_COMPARE(tec->eventInRangeIndex(0, 210, teCons), ==,
true);
926 TEST_COMPARE(teCons.size(), ==, 4);
927 TEST_COMPARE(teCons[0]->getName(), ==,
"teri2");
928 TEST_COMPARE(teCons[0]->indexOfNextEvent(0), ==, 20);
929 TEST_COMPARE(teCons[1]->getName(), ==,
"teli2");
930 TEST_COMPARE(teCons[1]->indexOfNextEvent(0), ==, 30);
931 TEST_COMPARE(teCons[2]->getName(), ==,
"teli1");
932 TEST_COMPARE(teCons[2]->indexOfNextEvent(0), ==, 40);
933 TEST_COMPARE(teCons[3]->getName(), ==,
"teri1");
934 TEST_COMPARE(teCons[3]->indexOfNextEvent(0), ==, 50);
936 TEST_COMPARE(tec->eventInRangeIndex(70, 210, teCons), ==,
true);
937 TEST_COMPARE(teCons.size(), ==, 4);
938 TEST_COMPARE(teCons[0]->getName(), ==,
"teri2");
939 TEST_COMPARE(teCons[0]->indexOfNextEvent(70), ==, 80);
940 TEST_COMPARE(teCons[1]->getName(), ==,
"teli1");
941 TEST_COMPARE(teCons[1]->indexOfNextEvent(70), ==, 90);
942 TEST_COMPARE(teCons[2]->getName(), ==,
"teri1");
943 TEST_COMPARE(teCons[2]->indexOfNextEvent(70), ==, 100);
944 TEST_COMPARE(teCons[3]->getName(), ==,
"teli2");
945 TEST_COMPARE(teCons[3]->indexOfNextEvent(70), ==, 130);
947 TEST_COMPARE(tec->eventInRangeIndex(190, 210, teCons), ==,
true);
948 TEST_COMPARE(teCons.size(), ==, 4);
949 TEST_COMPARE(teCons[0]->getName(), ==,
"teri1");
950 TEST_COMPARE(teCons[0]->indexOfNextEvent(190), ==, 200);
951 TEST_COMPARE(teCons[1]->getName(), ==,
"teri2");
952 TEST_COMPARE(teCons[1]->indexOfNextEvent(190), ==, 200);
953 TEST_COMPARE(teCons[2]->getName(), ==,
"teli1");
954 TEST_COMPARE(teCons[2]->indexOfNextEvent(190), ==, 200);
955 TEST_COMPARE(teCons[3]->getName(), ==,
"teli2");
956 TEST_COMPARE(teCons[3]->indexOfNextEvent(190), ==, 200);
970 ter->setName(
"Test Range");
971 teri->setName(
"Test Range Index");
972 tel->setName(
"Test List");
973 teli->setName(
"Test List Index");
981 tec->remove(
"Blah Blah");
984 tec->remove(
"Test Range Index");
986 auto names = tec->getTimeEventNames();
987 TEST_COMPARE(names, ==,
"Test Range, Test List, Test List Index");
989 tec->remove(
"Test List Index");
991 names = tec->getTimeEventNames();
994 tec->remove(
"Test Range");
996 names = tec->getTimeEventNames();
999 tec->remove(
"Test List");
1001 names = tec->getTimeEventNames();
1016 ter->setName(
"Test Range");
1017 teri->setName(
"Test Range Index");
1018 tel->setName(
"Test List");
1019 teli->setName(
"Test List Index");
1027 auto teTest = tec->find(
"Test Range");
1030 teTest = tec->find(
"Test Range Index");
1031 TEST_COMPARE(teTest->getName(), ==,
"Test Range Index");
1033 teTest = tec->find(
"Test List");
1036 teTest = tec->find(
"Test List Index");
1037 TEST_COMPARE(teTest->getName(), ==,
"Test List Index");
1039 teTest = tec->find(
"Blah Blah");
1076 ter->setName(
"Test Range");
1077 teri->setName(
"Test Range Index");
1078 tel->setName(
"Test List");
1079 teli->setName(
"Test List Index");
1087 auto timeEvents = tec->getTimeEvents();
1090 auto pl = tec->getValidParameters();
1092 TEST_COMPARE(pl->get<std::string>(
"Name"), ==,
"TimeEventComposite");
1093 TEST_COMPARE(pl->get<std::string>(
"Type"), ==,
"Composite");
1095 "Test Range, Test Range Index, Test List, Test List Index");
1097 TEST_COMPARE(pl->isSublist(
"Test Range Index"), ==,
true);
1099 TEST_COMPARE(pl->isSublist(
"Test List Index"), ==,
true);
1102 std::ostringstream unusedParameters;
1103 pl->unused(unusedParameters);
1105 unusedParameters.str(), ==,
1106 "WARNING: Parameter \"Test Range\" [unused] is unused\n"
1107 "WARNING: Parameter \"Test Range Index\" [unused] is unused\n"
1108 "WARNING: Parameter \"Test List\" [unused] is unused\n"
1109 "WARNING: Parameter \"Test List Index\" [unused] is unused\n");
1112 auto terPL = pl->sublist(
"Test Range");
1113 TEST_COMPARE(terPL.get<std::string>(
"Type"), ==,
"Range");
1114 TEST_COMPARE(terPL.get<std::string>(
"Name"), ==,
"Test Range");
1118 TEST_COMPARE(terPL.get<
int>(
"Number of Events"), ==, 1);
1120 std::numeric_limits<double>::epsilon() * 100.0,
1123 TEST_COMPARE(terPL.get<
bool>(
"Land On Exactly"), ==,
true);
1126 std::ostringstream unusedParameters;
1127 terPL.unused(unusedParameters);
1131 auto teriPL = pl->sublist(
"Test Range Index");
1132 TEST_COMPARE(teriPL.get<std::string>(
"Type"), ==,
"Range Index");
1133 TEST_COMPARE(teriPL.get<std::string>(
"Name"), ==,
"Test Range Index");
1139 std::ostringstream unusedParameters;
1140 teriPL.unused(unusedParameters);
1144 auto telPL = pl->sublist(
"Test List");
1145 TEST_COMPARE(telPL.get<std::string>(
"Type"), ==,
"List");
1146 TEST_COMPARE(telPL.get<std::string>(
"Name"), ==,
"Test List");
1148 std::numeric_limits<double>::epsilon() * 100.0,
1150 TEST_COMPARE(telPL.get<
bool>(
"Land On Exactly"), ==,
true);
1151 TEST_COMPARE(telPL.get<std::string>(
"Time List"), ==,
"");
1154 std::ostringstream unusedParameters;
1155 telPL.unused(unusedParameters);
1159 auto teliPL = pl->sublist(
"Test List Index");
1160 TEST_COMPARE(teliPL.get<std::string>(
"Type"), ==,
"List Index");
1161 TEST_COMPARE(teliPL.get<std::string>(
"Name"), ==,
"Test List Index");
1162 TEST_COMPARE(teliPL.get<std::string>(
"Index List"), ==,
"");
1165 std::ostringstream unusedParameters;
1166 teliPL.unused(unusedParameters);
1176 using Teuchos::rcp_const_cast;
1180 auto pl = rcp_const_cast<
ParameterList>(tecTmp->getValidParameters());
1182 auto tec = Tempus::createTimeEventComposite<double>(pl);
1185 TEST_COMPARE(tec->getName(), ==,
"TimeEventComposite");
1198 ter->setName(
"Test Range");
1199 teri->setName(
"Test Range Index");
1200 tel->setName(
"Test List");
1201 teli->setName(
"Test List Index");
1208 auto pl = rcp_const_cast<
ParameterList>(tecTmp->getValidParameters());
1210 auto tec = Tempus::createTimeEventComposite<double>(pl);
1213 TEST_COMPARE(tec->getName(), ==,
"TimeEventComposite");
1217 "Test Range, Test Range Index, Test List, Test List Index");
1222 auto pl = rcp_const_cast<
ParameterList>(tecTmp->getValidParameters());
1224 auto nonTempusTE = Teuchos::parameterList(
"Application Time Event");
1225 nonTempusTE->set<std::string>(
"Name",
"Application Time Event");
1226 nonTempusTE->set<std::string>(
"Type",
"Application Time Event Type");
1227 nonTempusTE->set<
double>(
"Secret Sauce", 1.2345);
1228 pl->set(
"Application Time Event", *nonTempusTE);
1229 pl->set(
"Time Events",
"Application Time Event");
1231 auto tec = Tempus::createTimeEventComposite<double>(pl);
1234 TEST_COMPARE(tec->getName(), ==,
"TimeEventComposite");
Teuchos::RCP< Tempus::TimeEventRange< double > > getTestRange3()
TimeEventRangeIndex specifies a start, stop and stride index.
Teuchos::RCP< Tempus::TimeEventRange< double > > getTestRange2()
Teuchos::RCP< Tempus::TimeEventListIndex< double > > getTestListIndex2()
TimeEventListIndex specifies a list of index events.
#define TEST_COMPARE(v1, comp, v2)
Teuchos::RCP< Tempus::TimeEventRangeIndex< double > > getTestRangeIndex3()
#define TEST_FLOATING_EQUALITY(v1, v2, tol)
Teuchos::RCP< Tempus::TimeEventList< double > > getTestList3()
Teuchos::RCP< Tempus::TimeEventRange< double > > getTestRange1()
TimeEventRange specifies a start, stop and stride time.
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)
Teuchos::RCP< Tempus::TimeEventList< double > > getTestList1()
This composite TimeEvent loops over added TimeEvents.
TEUCHOS_UNIT_TEST(BackwardEuler, Default_Construction)
Teuchos::RCP< Tempus::TimeEventListIndex< double > > getTestListIndex3()
Teuchos::RCP< Tempus::TimeEventListIndex< double > > getTestListIndex1()
Teuchos::RCP< Tempus::TimeEventRangeIndex< double > > getTestRangeIndex1()
Teuchos::RCP< Tempus::TimeEventList< double > > getTestList2()
Teuchos::RCP< Tempus::TimeEventRangeIndex< double > > getTestRangeIndex2()
TimeEventList specifies a list of time events.
Teuchos::RCP< TimeEventComposite< Scalar > > createTimeEventComposite(Teuchos::RCP< Teuchos::ParameterList > const &pList)
TimeEventComposite nonmember constructor via ParameterList.