Remove trans multiplier from the dake model

This commit is contained in:
Tor Harald Sandve 2023-11-22 13:59:25 +01:00
parent e362e1018d
commit 08b41f09d8
3 changed files with 10 additions and 11 deletions

View File

@ -43,7 +43,7 @@ namespace Opm {
public:
static WDFAC serializationTestObject();
double getDFactor(const Connection& connection, double mu, double rho, double phi, double trans_mult) const;
double getDFactor(const Connection& connection, double mu, double rho, double phi) const;
void updateWDFAC(const DeckRecord& record);
//void updateWDFAC(const RestartIO::RstWell& rst_well);
void updateWDFACCOR(const DeckRecord& record);

View File

@ -87,7 +87,7 @@ namespace Opm {
[](const double tot_cf, const auto& conn) { return tot_cf + conn.CF(); });
}
double WDFAC::getDFactor(const Connection& connection, double mu, double rho, double phi, double trans_mult) const {
double WDFAC::getDFactor(const Connection& connection, double mu, double rho, double phi) const {
if (m_total_cf < 0.0) {
throw std::invalid_argument { "Total connection factor is not set" };
@ -109,8 +109,8 @@ namespace Opm {
}
case WDFACTYPE::DAKEMODEL:
{
double Kh = connection.Kh() * trans_mult;
double Ke = connection.Ke() * trans_mult;
double Kh = connection.Kh();
double Ke = connection.Ke();
double h = Kh / Ke;
double rw = connection.rw();

View File

@ -5784,22 +5784,21 @@ END
double rho = 1.0;
double mu = 0.01*Opm::prefix::centi * Opm::unit::Poise;
double phi = 0.3;
double trans_mult = 1.0;
// WDFAC overwrites D factor in COMDAT
BOOST_CHECK(wdfac11.useDFactor());
// well d factor scaled by connection CF.
BOOST_CHECK_CLOSE(wdfac11.getDFactor(well11.getConnections()[0], mu, rho, phi, trans_mult), 6*1*Opm::unit::day, 1e-12);
BOOST_CHECK_CLOSE(wdfac21.getDFactor(well21.getConnections()[0], mu, rho, phi, trans_mult), 2*Opm::unit::day, 1e-12);
BOOST_CHECK_CLOSE(wdfac11.getDFactor(well11.getConnections()[0], mu, rho, phi), 6*1*Opm::unit::day, 1e-12);
BOOST_CHECK_CLOSE(wdfac21.getDFactor(well21.getConnections()[0], mu, rho, phi), 2*Opm::unit::day, 1e-12);
const auto& well12 = sched.getWell("W1", 2);
const auto& well22 = sched.getWell("W2", 2);
const auto& wdfac12 = well12.getWDFAC();
const auto& wdfac22 = well22.getWDFAC();
BOOST_CHECK_CLOSE(wdfac12.getDFactor(well12.getConnections()[0], mu, rho, phi, trans_mult), 5.19e-1, 3);
BOOST_CHECK_CLOSE(wdfac22.getDFactor(well22.getConnections()[0], mu, rho, phi, trans_mult), 2*Opm::unit::day, 1e-12);
BOOST_CHECK_CLOSE(wdfac12.getDFactor(well12.getConnections()[0], mu, rho, phi), 5.19e-1, 3);
BOOST_CHECK_CLOSE(wdfac22.getDFactor(well22.getConnections()[0], mu, rho, phi), 2*Opm::unit::day, 1e-12);
const auto& well13 = sched.getWell("W1", 3);
@ -5812,8 +5811,8 @@ END
BOOST_CHECK_CLOSE(well13.getConnections()[0].dFactor(), 0*Opm::unit::day, 1e-12);
BOOST_CHECK_CLOSE(well13.getConnections()[1].dFactor(), 0*Opm::unit::day, 1e-12);
BOOST_CHECK_CLOSE(well13.getConnections()[2].dFactor(), 11*Opm::unit::day, 1e-12);
BOOST_CHECK_CLOSE(wdfac13.getDFactor(well13.getConnections()[2], mu, rho, phi, trans_mult), 6/3*11*Opm::unit::day, 1e-12);
BOOST_CHECK_CLOSE(wdfac23.getDFactor(well23.getConnections()[0], mu, rho, phi, trans_mult), 2*Opm::unit::day, 1e-12);
BOOST_CHECK_CLOSE(wdfac13.getDFactor(well13.getConnections()[2], mu, rho, phi), 6/3*11*Opm::unit::day, 1e-12);
BOOST_CHECK_CLOSE(wdfac23.getDFactor(well23.getConnections()[0], mu, rho, phi), 2*Opm::unit::day, 1e-12);
}
BOOST_AUTO_TEST_CASE(createDeckWithBC) {