Ignore:
Timestamp:
Sep 19, 2014 8:22:05 AM (6 years ago)
Author:
bradbell
Message:
  1. Zero order forward mode trace is correct, but results not getteing back

to function object; i.e. y and y_cache different.

  1. Change numvar to num_var in reverse mode sweep functions.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/cache/cppad/local/reverse_sweep.hpp

    r3335 r3342  
    6464is the number of independent variables on the tape.
    6565
    66 \param numvar
     66\param num_var
    6767is the total number of variables on the tape.
    6868This is also equal to the number of rows in the matrix \a Taylor; i.e.,
     
    107107
    108108\param Taylor
    109 For i = 1 , ... , \a numvar, and for k = 0 , ... , \a d,
     109For i = 1 , ... , \a num_var, and for k = 0 , ... , \a d,
    110110\a Taylor [ i * J + k ]
    111111is the k-th order Taylor coefficient corresponding to
     
    126126The vector \f$ v \f$, used to define \f$ G(u) \f$,
    127127is specified by these rows.
    128 For i = 0 , ... , m - 1, \a Partial [ ( \a numvar - m + i ) * K + d ] = v_i.
     128For i = 0 , ... , m - 1, \a Partial [ ( \a num_var - m + i ) * K + d ] = v_i.
    129129For i = 0 , ... , m - 1 and for k = 0 , ... , d - 1,
    130 \a Partial [ ( \a numvar - m + i ) * K + k ] = 0.
     130\a Partial [ ( \a num_var - m + i ) * K + k ] = 0.
    131131\n
    132132\n
    133133\b Temporary:
    134 For i = n+1 , ... , \a numvar - 1 and for k = 0 , ... , d,
     134For i = n+1 , ... , \a num_var - 1 and for k = 0 , ... , d,
    135135the value of \a Partial [ i * K + k ] is used for temporary work space
    136136and its output value is not defined.
     
    164164        size_t                      d,
    165165        size_t                      n,
    166         size_t                      numvar,
     166        size_t                      num_var,
    167167        player<Base>*               play,
    168168        size_t                      J,
     
    180180        const addr_t*   arg = CPPAD_NULL;
    181181
    182         // check numvar argument
    183         CPPAD_ASSERT_UNKNOWN( play->num_var_rec() == numvar );
    184         CPPAD_ASSERT_UNKNOWN( numvar > 0 );
     182        // check num_var argument
     183        CPPAD_ASSERT_UNKNOWN( play->num_var_rec() == num_var );
     184        CPPAD_ASSERT_UNKNOWN( num_var > 0 );
    185185
    186186        // length of the parameter vector (used by CppAD assert macros)
     
    257257                        op,
    258258                        arg,
     259                        num_var,
    259260                        cache2var
    260261                );
     
    295296                        case AcosOp:
    296297                        // sqrt(1 - x * x), acos(x)
    297                         CPPAD_ASSERT_UNKNOWN( i_var < numvar );
     298                        CPPAD_ASSERT_UNKNOWN( i_var < num_var );
    298299                        reverse_acos_op(
    299300                                d, i_var, arg[0], J, Taylor, K, Partial
     
    304305                        case AsinOp:
    305306                        // sqrt(1 - x * x), asin(x)
    306                         CPPAD_ASSERT_UNKNOWN( i_var < numvar );
     307                        CPPAD_ASSERT_UNKNOWN( i_var < num_var );
    307308                        reverse_asin_op(
    308309                                d, i_var, arg[0], J, Taylor, K, Partial
     
    313314                        case AtanOp:
    314315                        // 1 + x * x, atan(x)
    315                         CPPAD_ASSERT_UNKNOWN( i_var < numvar );
     316                        CPPAD_ASSERT_UNKNOWN( i_var < num_var );
    316317                        reverse_atan_op(
    317318                                d, i_var, arg[0], J, Taylor, K, Partial
     
    366367
    367368                        case CosOp:
    368                         CPPAD_ASSERT_UNKNOWN( i_var < numvar );
     369                        CPPAD_ASSERT_UNKNOWN( i_var < num_var );
    369370                        reverse_cos_op(
    370371                                d, i_var, arg[0], J, Taylor, K, Partial
     
    374375
    375376                        case CoshOp:
    376                         CPPAD_ASSERT_UNKNOWN( i_var < numvar );
     377                        CPPAD_ASSERT_UNKNOWN( i_var < num_var );
    377378                        reverse_cosh_op(
    378379                                d, i_var, arg[0], J, Taylor, K, Partial
     
    489490
    490491                        case SignOp:
    491                         CPPAD_ASSERT_UNKNOWN( i_var < numvar );
     492                        CPPAD_ASSERT_UNKNOWN( i_var < num_var );
    492493                        reverse_sign_op(
    493494                                d, i_var, arg[0], J, Taylor, K, Partial
     
    497498
    498499                        case SinOp:
    499                         CPPAD_ASSERT_UNKNOWN( i_var < numvar );
     500                        CPPAD_ASSERT_UNKNOWN( i_var < num_var );
    500501                        reverse_sin_op(
    501502                                d, i_var, arg[0], J, Taylor, K, Partial
     
    505506
    506507                        case SinhOp:
    507                         CPPAD_ASSERT_UNKNOWN( i_var < numvar );
     508                        CPPAD_ASSERT_UNKNOWN( i_var < num_var );
    508509                        reverse_sinh_op(
    509510                                d, i_var, arg[0], J, Taylor, K, Partial
     
    559560
    560561                        case TanOp:
    561                         CPPAD_ASSERT_UNKNOWN( i_var < numvar );
     562                        CPPAD_ASSERT_UNKNOWN( i_var < num_var );
    562563                        reverse_tan_op(
    563564                                d, i_var, arg[0], J, Taylor, K, Partial
     
    567568
    568569                        case TanhOp:
    569                         CPPAD_ASSERT_UNKNOWN( i_var < numvar );
     570                        CPPAD_ASSERT_UNKNOWN( i_var < num_var );
    570571                        reverse_tanh_op(
    571572                                d, i_var, arg[0], J, Taylor, K, Partial
Note: See TracChangeset for help on using the changeset viewer.