Ejemplo n.º 1
0
def test_let_pc_pd():
    """Test LET formulation for primary drainage capillary pressure"""
    wateroil = WaterOil(swirr=0.1)
    wateroil.add_LET_pc_pd(Lp=1, Ep=1, Tp=1, Lt=1, Et=1, Tt=1, Pcmax=10, Pct=5)
    assert np.isclose(wateroil.table["pc"].max(), 10)
    assert np.isclose(wateroil.table["pc"].min(), 0)
    # (everything is linear)

    wateroil.add_LET_pc_pd(Lp=10, Ep=10, Tp=10, Lt=10, Et=10, Tt=10, Pcmax=10, Pct=5)
    assert np.isclose(wateroil.table["pc"].max(), 10)
    assert np.isclose(wateroil.table["pc"].min(), 0)
    # On a plot, you can see a kink at Pc=5.
    # wateroil.plotpc()

    wateroil = WaterOil(swirr=0.1, sorw=0.4)
    wateroil.add_LET_pc_pd(Lp=10, Ep=10, Tp=10, Lt=10, Et=10, Tt=10, Pcmax=5, Pct=2)
    assert np.isclose(wateroil.table["pc"].max(), 5)
    assert np.isclose(wateroil.table["pc"].min(), 0)
    # On plot: hard-to-see kink at Pc=2. Linear curve from sw=0.6 to 1 due to sorw.
    assert (
        len(wateroil.table[(wateroil.table["sw"] >= 0.6) & (wateroil.table["sw"] <= 1)])
        == 2
    )
    wateroil.add_corey_water()
    wateroil.add_corey_oil()
    assert sat_table_str_ok(wateroil.SWOF())
Ejemplo n.º 2
0
def test_LET_pc_pd():
    wo = WaterOil(swirr=0.1)
    wo.add_LET_pc_pd(Lp=1, Ep=1, Tp=1, Lt=1, Et=1, Tt=1, Pcmax=10, Pct=5)
    assert np.isclose(wo.table["pc"].max(), 10)
    assert np.isclose(wo.table["pc"].min(), 0)
    # (everything is linear)

    wo.add_LET_pc_pd(Lp=10, Ep=10, Tp=10, Lt=10, Et=10, Tt=10, Pcmax=10, Pct=5)
    assert np.isclose(wo.table["pc"].max(), 10)
    assert np.isclose(wo.table["pc"].min(), 0)
    # On a plot, you can see a kink at Pc=5.
    # wo.plotpc()

    wo = WaterOil(swirr=0.1, sorw=0.4)
    wo.add_LET_pc_pd(Lp=10, Ep=10, Tp=10, Lt=10, Et=10, Tt=10, Pcmax=5, Pct=2)
    assert np.isclose(wo.table["pc"].max(), 5)
    assert np.isclose(wo.table["pc"].min(), 0)
    # On plot: hard-to-see kink at Pc=2. Linear curve from sw=0.6 to 1 due to sorw.
    assert len(wo.table[(wo.table["sw"] >= 0.6) & (wo.table["sw"] <= 1)]) == 2