Esempio n. 1
0
def test_overload_sub():
    x = DualNumber(5,2)
    y = DualNumber(7,1)

    assert (x - y).val == -2 and (x - y).der == 1
    assert (x.__rsub__(y)).val == 2 and (x.__rsub__(y)).der == -1
    assert (x - 5).val == 0 and (x - 5).der == 2
    assert (x - 5.0).val == 0 and (x - 5.0).der == 2
    assert (5 - x).val == 0 and (5 - x).der == -2
    assert (5.0 - x).val == 0 and (5.0 - x).der == -2
Esempio n. 2
0
def rm_test_overload_sub():
    x = DualNumber(5,Reverse=True)
    y = DualNumber(7,Reverse=True)

    assert (x - y).val == -2 and (x - y).der == 0
    assert (x.__rsub__(y)).val == 2 and (x.__rsub__(y)).der == 0
    assert (x - 5).val == 0 and (x - 5).der == 0
    assert (x - 5.0).val == 0 and (x - 5.0).der == 0
    assert (5 - x).val == 0 and (5 - x).der == 0
    assert (5.0 - x).val == 0 and (5.0 - x).der == 0