Prev Next a_double_unary_fun_xam.py Headings

@(@\newcommand{\B}[1]{ {\bf #1} } \newcommand{\R}[1]{ {\rm #1} }@)@
Python: a_double Unary Functions with AD Result: Example and Test
# This test fails in Octave and so is skipped by make check_lib_octave
def a_double_unary_fun_xam() :
     #
     # load the Cppad Swig library
     import py_cppad
     #
     # initialize return variable
     ok = True
     # ---------------------------------------------------------------------
     #
     # fabs
     one = py_cppad.a_double(1.0)
     abs_one = one.fabs()
     ok = ok and abs_one.value() == 1.0
     #
     # pi/4
     pi_4 = one.atan()
     #
     # sqrt(2)
     tmp = py_cppad.a_double(2.0)
     r2 = tmp.sqrt()
     #
     # sin(pi/4)  * sqrt(2) = 1.0;
     tmp = r2 * pi_4.sin() 
     ok = ok and tmp.near_equal(one) 
     #
     # cos(pi/4)  * sqrt(2) = 1.0;
     tmp = r2 * pi_4.cos() 
     ok = ok and tmp.near_equal(one) 
     #
     # tan(pi/4)  = 1.0;
     tmp = pi_4.tan() 
     ok = ok and tmp.near_equal(one) 
     #
     return( ok )
#

Input File: build/lib/example/python/a_double_unary_fun_xam.py