Compare AD with Base Objects: Example and Test
Keywords: compare ad with base objects: example test Nearequalext

| Prev | Next |  |  |  |  |  | near_equal_ext.cpp | Headings

Compare AD with Base Objects: Example and Test
`

    # include <cppad/cppad.hpp>
    # include <complex>

    bool NearEqualExt(void)
    {	bool ok = true;
    	using CppAD::AD;
    	using CppAD::NearEqual;

    	// double
    	double x    = 1.00000;
    	double y    = 1.00001;
    	double a    =  .00005;
    	double r    =  .00005;
    	double zero = 0.;

    	// AD<double>
    	AD<double> ax(x);
    	AD<double> ay(y);

    	ok &= NearEqual(ax, ay, zero, a);
    	ok &= NearEqual(ax, y,  r, zero);
    	ok &= NearEqual(x, ay,  r,    a);

    	// std::complex<double>
    	AD<double> cx(x);
    	AD<double> cy(y);

    	// AD< std::complex<double> >
    	AD<double> acx(x);
    	AD<double> acy(y);

    	ok &= NearEqual(acx, acy, zero, a);
    	ok &= NearEqual(acx,  cy, r, zero);
    	ok &= NearEqual(acx,   y, r,    a);
    	ok &= NearEqual( cx, acy, r,    a);
    	ok &= NearEqual(  x, acy, r,    a);

    	return ok;
    }

`

Input File: example/near_equal_ext.cpp