Пример #1
0
def test_sin():
    """Test of sin method."""
    # Test for sin with Rnode objects

    x = Rnode(1.0)
    z = Elem.sin(x)
    z.grad_value = 1.0
    try:
        assert z.value == np.sin(x.value)
        assert x.grad() == np.cos(x.value)

    except AssertionError as e:
        print(e)
        raise AssertionError

    # Test for sin with two Dual objects
    val1 = Dual(3, [4, 1])
    val2 = Dual(2, [3, 1])
    val = val1 + val2
    z = Elem.sin(val)

    try:
        assert z.val == np.sin(val.val)
        assert z.der[0] == np.cos(val.val) * val.der[0]
        assert z.der[1] == np.cos(val.val) * val.der[1]

    except AssertionError as e:
        print(e)
        raise AssertionError

    # Test for sin with int
    x = 3
    fx = Elem.sin(x)
    try:
        assert fx == np.sin(x)

    except AssertionError as e:
        print(e)
        raise AssertionError
Пример #2
0
import farad as fd
import farad.elem as el
import farad.driver as ad
f = lambda x: el.exp(x) * el.sin(x**2)
function = ad.AutoDiff(f)
print(function.forward(1))
Пример #3
0
 def f(x):
     return Elem.sin(x)
Пример #4
0
 def f2d3(x):
     return Elem.sin(x)
Пример #5
0
def fi(x):
    return el.sin(x) - x