Add three argument (year, month, day) constructor TimeStampUTC
This commit is contained in:
@@ -53,6 +53,7 @@ namespace Opm {
|
|||||||
|
|
||||||
explicit TimeStampUTC(const std::time_t tp);
|
explicit TimeStampUTC(const std::time_t tp);
|
||||||
explicit TimeStampUTC(const YMD& ymd);
|
explicit TimeStampUTC(const YMD& ymd);
|
||||||
|
TimeStampUTC(int year, int month, int day);
|
||||||
TimeStampUTC(const YMD& ymd,
|
TimeStampUTC(const YMD& ymd,
|
||||||
int hour,
|
int hour,
|
||||||
int minutes,
|
int minutes,
|
||||||
|
|||||||
@@ -113,6 +113,10 @@ Opm::TimeStampUTC::TimeStampUTC(const YMD& ymd)
|
|||||||
: ymd_{ std::move(ymd) }
|
: ymd_{ std::move(ymd) }
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
Opm::TimeStampUTC::TimeStampUTC(int year, int month, int day)
|
||||||
|
: ymd_{ year, month, day }
|
||||||
|
{}
|
||||||
|
|
||||||
Opm::TimeStampUTC& Opm::TimeStampUTC::hour(const int h)
|
Opm::TimeStampUTC& Opm::TimeStampUTC::hour(const int h)
|
||||||
{
|
{
|
||||||
this->hour_ = h;
|
this->hour_ = h;
|
||||||
|
|||||||
@@ -115,7 +115,7 @@ RstHeader::RstHeader(const std::vector<int>& intehead, const std::vector<bool>&
|
|||||||
}
|
}
|
||||||
|
|
||||||
std::pair<std::time_t, std::size_t> RstHeader::restart_info() const {
|
std::pair<std::time_t, std::size_t> RstHeader::restart_info() const {
|
||||||
return std::make_pair(asTimeT(TimeStampUTC({this->year, this->month, this->mday})),
|
return std::make_pair(asTimeT(TimeStampUTC(this->year, this->month, this->mday)),
|
||||||
std::size_t(this->report_step));
|
std::size_t(this->report_step));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -33,7 +33,7 @@
|
|||||||
Opm::TimeMap make_timemap(int num) {
|
Opm::TimeMap make_timemap(int num) {
|
||||||
std::vector<std::time_t> tp;
|
std::vector<std::time_t> tp;
|
||||||
for (int i = 0; i < num; i++)
|
for (int i = 0; i < num; i++)
|
||||||
tp.push_back( Opm::asTimeT(Opm::TimeStampUTC({2010,1,i+1})));
|
tp.push_back( Opm::asTimeT(Opm::TimeStampUTC(2010,1,i+1)));
|
||||||
|
|
||||||
Opm::TimeMap timeMap{ tp };
|
Opm::TimeMap timeMap{ tp };
|
||||||
return timeMap;
|
return timeMap;
|
||||||
|
|||||||
@@ -44,7 +44,7 @@ BOOST_AUTO_TEST_CASE(DynamicVectorSet) {
|
|||||||
const std::time_t startDate = Opm::TimeMap::mkdate(2010, 1, 1);
|
const std::time_t startDate = Opm::TimeMap::mkdate(2010, 1, 1);
|
||||||
std::vector<std::time_t> tp = { startDate };
|
std::vector<std::time_t> tp = { startDate };
|
||||||
for (int i = 0; i < 4; i++)
|
for (int i = 0; i < 4; i++)
|
||||||
tp.push_back( Opm::asTimeT(Opm::TimeStampUTC({2010,1,i+2})));
|
tp.push_back( Opm::asTimeT(Opm::TimeStampUTC(2010,1,i+2)));
|
||||||
|
|
||||||
Opm::TimeMap timeMap{ tp };
|
Opm::TimeMap timeMap{ tp };
|
||||||
Opm::DynamicVector<int> state(timeMap , 137);
|
Opm::DynamicVector<int> state(timeMap , 137);
|
||||||
@@ -70,7 +70,7 @@ BOOST_AUTO_TEST_CASE(DynamicVectorPtr) {
|
|||||||
const std::time_t startDate = Opm::TimeMap::mkdate(2010, 1, 1);
|
const std::time_t startDate = Opm::TimeMap::mkdate(2010, 1, 1);
|
||||||
std::vector<std::time_t> tp = { startDate };
|
std::vector<std::time_t> tp = { startDate };
|
||||||
for (int i = 0; i < 4; i++)
|
for (int i = 0; i < 4; i++)
|
||||||
tp.push_back( Opm::asTimeT(Opm::TimeStampUTC({2010,1,i+2})));
|
tp.push_back( Opm::asTimeT(Opm::TimeStampUTC(2010,1,i+2)));
|
||||||
|
|
||||||
Opm::TimeMap timeMap{ tp };
|
Opm::TimeMap timeMap{ tp };
|
||||||
Opm::DynamicVector<int> state( timeMap , 137 );
|
Opm::DynamicVector<int> state( timeMap , 137 );
|
||||||
|
|||||||
@@ -32,10 +32,10 @@
|
|||||||
|
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(CreateEmpty) {
|
BOOST_AUTO_TEST_CASE(CreateEmpty) {
|
||||||
std::vector<std::time_t> tp = { Opm::asTimeT(Opm::TimeStampUTC({2010,1,1})) };
|
std::vector<std::time_t> tp = { Opm::asTimeT(Opm::TimeStampUTC(2010,1,1)) };
|
||||||
|
|
||||||
for (int i = 0; i < 11; i++)
|
for (int i = 0; i < 11; i++)
|
||||||
tp.push_back( Opm::asTimeT(Opm::TimeStampUTC({2010,1,i+2})));
|
tp.push_back( Opm::asTimeT(Opm::TimeStampUTC(2010,1,i+2)));
|
||||||
|
|
||||||
Opm::TimeMap timeMap(tp);
|
Opm::TimeMap timeMap(tp);
|
||||||
Opm::Events events( timeMap );
|
Opm::Events events( timeMap );
|
||||||
|
|||||||
@@ -3453,12 +3453,12 @@ BOOST_AUTO_TEST_CASE(WellNames) {
|
|||||||
|
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(RFT_CONFIG) {
|
BOOST_AUTO_TEST_CASE(RFT_CONFIG) {
|
||||||
std::vector<std::time_t> tp = { asTimeT( TimeStampUTC({2010, 1, 1})),
|
std::vector<std::time_t> tp = { asTimeT( TimeStampUTC(2010, 1, 1)),
|
||||||
asTimeT( TimeStampUTC({2010, 1, 2})),
|
asTimeT( TimeStampUTC(2010, 1, 2)),
|
||||||
asTimeT( TimeStampUTC({2010, 1, 3})),
|
asTimeT( TimeStampUTC(2010, 1, 3)),
|
||||||
asTimeT( TimeStampUTC({2010, 1, 4})),
|
asTimeT( TimeStampUTC(2010, 1, 4)),
|
||||||
asTimeT( TimeStampUTC({2010, 1, 5})),
|
asTimeT( TimeStampUTC(2010, 1, 5)),
|
||||||
asTimeT( TimeStampUTC({2010, 1, 6}))};
|
asTimeT( TimeStampUTC(2010, 1, 6))};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -48,15 +48,15 @@ BOOST_AUTO_TEST_CASE(GetStartDate) {
|
|||||||
|
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(AddDateNegativeStepThrows) {
|
BOOST_AUTO_TEST_CASE(AddDateNegativeStepThrows) {
|
||||||
std::vector<std::time_t> time_points = { Opm::asTimeT(Opm::TimeStampUTC({2000,1,1})), Opm::asTimeT(Opm::TimeStampUTC({1999,1,1}))};
|
std::vector<std::time_t> time_points = { Opm::asTimeT(Opm::TimeStampUTC(2000,1,1)), Opm::asTimeT(Opm::TimeStampUTC(1999,1,1))};
|
||||||
BOOST_CHECK_THROW(Opm::TimeMap timeMap(time_points), std::invalid_argument);
|
BOOST_CHECK_THROW(Opm::TimeMap timeMap(time_points), std::invalid_argument);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(AddStepSizeCorrect) {
|
BOOST_AUTO_TEST_CASE(AddStepSizeCorrect) {
|
||||||
std::vector<std::time_t> time_points = { Opm::asTimeT(Opm::TimeStampUTC({2010,1,1})),
|
std::vector<std::time_t> time_points = { Opm::asTimeT(Opm::TimeStampUTC(2010,1,1)),
|
||||||
Opm::asTimeT(Opm::TimeStampUTC({2010,1,2})),
|
Opm::asTimeT(Opm::TimeStampUTC(2010,1,2)),
|
||||||
Opm::asTimeT(Opm::TimeStampUTC({2010,1,3}))};
|
Opm::asTimeT(Opm::TimeStampUTC(2010,1,3))};
|
||||||
Opm::TimeMap timeMap(time_points);
|
Opm::TimeMap timeMap(time_points);
|
||||||
BOOST_CHECK_EQUAL(3U, timeMap.size());
|
BOOST_CHECK_EQUAL(3U, timeMap.size());
|
||||||
|
|
||||||
@@ -696,25 +696,25 @@ TSTEP
|
|||||||
const auto deck3 = parser.parseString(deck_string3);
|
const auto deck3 = parser.parseString(deck_string3);
|
||||||
|
|
||||||
// The date 2005-01-02 is not present as a DATES in the deck; invalid input.
|
// The date 2005-01-02 is not present as a DATES in the deck; invalid input.
|
||||||
auto invalid_restart = std::make_pair(Opm::asTimeT(Opm::TimeStampUTC({2005, 1, 2})), 5);
|
auto invalid_restart = std::make_pair(Opm::asTimeT(Opm::TimeStampUTC(2005, 1, 2)), 5);
|
||||||
auto valid_restart = std::make_pair(Opm::asTimeT(Opm::TimeStampUTC({2005, 1, 1})), 5);
|
auto valid_restart = std::make_pair(Opm::asTimeT(Opm::TimeStampUTC(2005, 1, 1)), 5);
|
||||||
|
|
||||||
BOOST_CHECK_THROW( Opm::TimeMap(deck1, invalid_restart) , std::invalid_argument);
|
BOOST_CHECK_THROW( Opm::TimeMap(deck1, invalid_restart) , std::invalid_argument);
|
||||||
Opm::TimeMap tm1(deck1, valid_restart);
|
Opm::TimeMap tm1(deck1, valid_restart);
|
||||||
BOOST_CHECK_THROW( tm1[1], std::invalid_argument );
|
BOOST_CHECK_THROW( tm1[1], std::invalid_argument );
|
||||||
BOOST_CHECK_THROW( tm1[4], std::invalid_argument );
|
BOOST_CHECK_THROW( tm1[4], std::invalid_argument );
|
||||||
auto start = tm1[0];
|
auto start = tm1[0];
|
||||||
BOOST_CHECK_EQUAL(start , Opm::asTimeT(Opm::TimeStampUTC({2000,1,1})));
|
BOOST_CHECK_EQUAL(start , Opm::asTimeT(Opm::TimeStampUTC(2000,1,1)));
|
||||||
BOOST_CHECK_EQUAL(tm1[5] , Opm::asTimeT(Opm::TimeStampUTC({2005,1,1})));
|
BOOST_CHECK_EQUAL(tm1[5] , Opm::asTimeT(Opm::TimeStampUTC(2005,1,1)));
|
||||||
BOOST_CHECK(tm1.skiprest());
|
BOOST_CHECK(tm1.skiprest());
|
||||||
|
|
||||||
Opm::TimeMap tm2(deck2, valid_restart);
|
Opm::TimeMap tm2(deck2, valid_restart);
|
||||||
BOOST_CHECK_EQUAL(tm2[5], Opm::asTimeT(Opm::TimeStampUTC({2005,1,1})));
|
BOOST_CHECK_EQUAL(tm2[5], Opm::asTimeT(Opm::TimeStampUTC(2005,1,1)));
|
||||||
BOOST_CHECK_EQUAL(tm2[6], Opm::asTimeT(Opm::TimeStampUTC({2005,7,1})));
|
BOOST_CHECK_EQUAL(tm2[6], Opm::asTimeT(Opm::TimeStampUTC(2005,7,1)));
|
||||||
|
|
||||||
Opm::TimeMap tm3(deck3, valid_restart);
|
Opm::TimeMap tm3(deck3, valid_restart);
|
||||||
BOOST_CHECK_EQUAL(tm3[5], Opm::asTimeT(Opm::TimeStampUTC({2005,1,1})));
|
BOOST_CHECK_EQUAL(tm3[5], Opm::asTimeT(Opm::TimeStampUTC(2005,1,1)));
|
||||||
BOOST_CHECK_EQUAL(tm3[6], Opm::asTimeT(Opm::TimeStampUTC({2005,1,2})));
|
BOOST_CHECK_EQUAL(tm3[6], Opm::asTimeT(Opm::TimeStampUTC(2005,1,2)));
|
||||||
BOOST_CHECK_EQUAL(tm3[7], Opm::asTimeT(Opm::TimeStampUTC({2005,1,3})));
|
BOOST_CHECK_EQUAL(tm3[7], Opm::asTimeT(Opm::TimeStampUTC(2005,1,3)));
|
||||||
BOOST_CHECK_EQUAL(tm3[8], Opm::asTimeT(Opm::TimeStampUTC({2005,1,4})));
|
BOOST_CHECK_EQUAL(tm3[8], Opm::asTimeT(Opm::TimeStampUTC(2005,1,4)));
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user