Exemplo n.º 1
0
def sincos_all_subtest(x, n, verbose=False, tol=1.0e-10):
    '''Test that the error in sincos_all() is <= tol.'''
    if verbose:
        print('Testing sincos(x=% -10g, n=%3d) ...' % (x, n)),
    # calculate with recurrence
    sc_r = sincos.sincos_calc_recur(x, n)
    # calculate with trig
    sc_t = sincos.sincos_calc_trig(x, n)
    # compare
    errmag = sincos_compare_recur_trig(sc_r, sc_t)
    if verbose:
        print('errmag = %g' % (errmag))
    ok = (errmag <= tol)
    assert ok
Exemplo n.º 2
0
def subtest_1():
    '''Some specific test cases.'''
    x = 2.718281828
    #x = 0.01
    # calculate for n=1..3
    print('Calculations with recurrence formula...')
    sc3a = sincos.sincos_calc_recur(x, 3)
    sincos.sincos_print(x, 3, sc3a)
    print('Calculations with explicit trig...')
    sc3b = sincos.sincos_calc_trig(x, 3)
    sincos.sincos_print(x, 3, sc3b)
    # calculate for n=1..8
    print('Recurrence for n=1..8...')
    sc8 = sincos.sincos_calc_recur(x, 8)
    sincos.sincos_print(x, 8, sc8)
    # test case for n=1..8
    print('Test case for n=1..8...')
    sincos_all_subtest(x, 8, verbose=True)
    # s*s + c*c = 1 test
    sincos_check_unit(sc8, verbose=True)