Changeset 3683 for trunk/test_more


Ignore:
Timestamp:
May 9, 2015 10:24:16 PM (5 years ago)
Author:
bradbell
Message:

merge to branch: trunk
from repository: https://github.com/coin-or/CppAD
start hash code: febe930d34888cf37df862a1bf118229b9bf37a5
end hash code: 494270b7d9413bba508ae4944e44e33b6f7be05b

commit 494270b7d9413bba508ae4944e44e33b6f7be05b
Author: Brad Bell <bradbell@…>
Date: Sat May 9 19:20:51 2015 -0700

  1. Fix duplicate expm1 in example and test_more makefile.am, CMakeLists.txt.
  2. Extend log theory to include log1p function.


log_forward.omh: remove trailing white space
log_reverse.omh: remove trailing white space

commit d2e5c615a1d620d364c7c73f47f9db18aa4bcba3
Author: Brad Bell <bradbell@…>
Date: Sat May 9 10:09:24 2015 -0700

Add new flags to configure.ac and include auto-tools automatic changes.


test_one.sh.in: handel case where space between name and (void).
exp_reverse.omh: change plural to singular.
test_one.sh.in: handel case where space between name and (void).

commit c62e0f95b359b188556d49fb7e3a75b0eaad12e4
Author: Brad Bell <bradbell@…>
Date: Sat May 9 07:14:17 2015 -0700

Remove trialing white space.

commit f443608ff6f29ed5ff05fa136543d6f2baab7757
Author: Brad Bell <bradbell@…>
Date: Sat May 9 07:13:53 2015 -0700

Fix some warnings when using eigen_vector for the test vector.


configure.ac: Comments for auto-tool commands that will result in many makefile.in changes.
makefile.in: automatic change from corresponding makefile.am.
test_one.sh.in: use cppad_cxx_flags to determine if c++11.
makefile.in: automatic change from corresponding makefile.am.
exp_forward.omh: Fix z{(0)} to be correct for both cases.
makefile.in: automatic change from corresponding makefile.am.

commit 003b9c373b2b77fde81427f57ee3db364fea5eff
Author: Brad Bell <bradbell@…>
Date: Sat May 9 04:53:44 2015 -0700

Add expm1 function.

commit a2b3d2fd72cda066e110368860452c5299211c30
Author: Brad Bell <bradbell@…>
Date: Fri May 8 19:39:12 2015 -0700

CMakeLists.txt: simplify ENDFOREACH command.

commit 31016ed04a3fd618456de115fd98c58f07b89f3e
Author: Brad Bell <bradbell@…>
Date: Fri May 8 17:04:34 2015 -0700

check_example.sh: Fix check that all examples are in list, remove trailing white space.
exp.cpp: minor white space edit.
example_list.omh: add examples that were missing.

commit e48ff330292e90ba40baffa8b2d1b2d12c44f099
Author: Brad Bell <bradbell@…>
Date: Fri May 8 16:31:28 2015 -0700

  1. Add expm1 funtion to exp theory.
  2. Change Exp -> exp.
  3. Remove redundant index commands.
  4. Remove trailing white space.


exp.cpp: more modern names in example.

Location:
trunk/test_more
Files:
1 added
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/test_more/CMakeLists.txt

    r3682 r3683  
    9595        erf.cpp
    9696        exp.cpp
     97        expm1.cpp
    9798        extern_value.cpp
    9899        for_hess.cpp
  • trunk/test_more/forward_dir.cpp

    r3682 r3683  
    5454                }
    5555                y1  = f.Forward(1, r, x1);
    56                 ok &= y1.size() == r*m;
    57 
    58                 // secondorder Taylor coefficients
    59                 CPPAD_TESTVECTOR(double) x2(r*n), y2;
    60                 for(ell = 0; ell < r; ell++)
    61                 {       for(j = 0; j < n; j++)
    62                                 x2[ r * j + ell ] = double(j + ell + 2);
    63                 }
    64                 y2  = f.Forward(2, r, x2);
    65                 ok &= y2.size() == r*m;
     56                ok &= size_t( y1.size() ) == r*m;
     57
     58                // secondorder Taylor coefficients
     59                CPPAD_TESTVECTOR(double) x2(r*n), y2;
     60                for(ell = 0; ell < r; ell++)
     61                {       for(j = 0; j < n; j++)
     62                                x2[ r * j + ell ] = double(j + ell + 2);
     63                }
     64                y2  = f.Forward(2, r, x2);
     65                ok &= size_t( y2.size() ) == r*m;
    6666                //
    6767                // Y_0  (t)    = F[X_0(t)] = X_0(t)
     
    114114                }
    115115                y1  = f.Forward(1, r, x1);
    116                 ok &= y1.size() == r*m;
    117 
    118                 // secondorder Taylor coefficients
    119                 CPPAD_TESTVECTOR(double) x2(r*n), y2;
    120                 for(ell = 0; ell < r; ell++)
    121                 {       for(j = 0; j < n; j++)
    122                                 x2[ r * j + ell ] = double(j + ell + 2);
    123                 }
    124                 y2  = f.Forward(2, r, x2);
    125                 ok &= y2.size() == r*m;
     116                ok &= size_t( y1.size() ) == r*m;
     117
     118                // secondorder Taylor coefficients
     119                CPPAD_TESTVECTOR(double) x2(r*n), y2;
     120                for(ell = 0; ell < r; ell++)
     121                {       for(j = 0; j < n; j++)
     122                                x2[ r * j + ell ] = double(j + ell + 2);
     123                }
     124                y2  = f.Forward(2, r, x2);
     125                ok &= size_t( y2.size() ) == r*m;
    126126                //
    127127                // Y_0  (t)    = F[X_0(t)]
     
    173173                }
    174174                y1  = f.Forward(1, r, x1);
    175                 ok &= y1.size() == r*m;
     175                ok &= size_t( y1.size() ) == r*m;
    176176
    177177                // secondorder Taylor coefficients
     
    182182                }
    183183                y2  = f.Forward(2, r, x2);
    184                 ok &= y2.size() == r*m;
     184                ok &= size_t( y2.size() ) == r*m;
    185185                //
    186186                // Y_0 (t)     = F[X_0(t)]
     
    233233                }
    234234                y1  = f.Forward(1, r, x1);
    235                 ok &= y1.size() == r*m;
    236 
    237                 // secondorder Taylor coefficients
    238                 CPPAD_TESTVECTOR(double) x2(r*n), y2;
    239                 for(ell = 0; ell < r; ell++)
    240                 {       for(j = 0; j < n; j++)
    241                                 x2[ r * j + ell ] = double(j + ell + 2);
    242                 }
    243                 y2  = f.Forward(2, r, x2);
    244                 ok &= y2.size() == r*m;
     235                ok &= size_t( y1.size() ) == r*m;
     236
     237                // secondorder Taylor coefficients
     238                CPPAD_TESTVECTOR(double) x2(r*n), y2;
     239                for(ell = 0; ell < r; ell++)
     240                {       for(j = 0; j < n; j++)
     241                                x2[ r * j + ell ] = double(j + ell + 2);
     242                }
     243                y2  = f.Forward(2, r, x2);
     244                ok &= size_t( y2.size() ) == r*m;
    245245                //
    246246                // Y_0 (t)     = F[X_0(t)]
     
    293293                }
    294294                y1  = f.Forward(1, r, x1);
    295                 ok &= y1.size() == r*m;
    296 
    297                 // secondorder Taylor coefficients
    298                 CPPAD_TESTVECTOR(double) x2(r*n), y2;
    299                 for(ell = 0; ell < r; ell++)
    300                 {       for(j = 0; j < n; j++)
    301                                 x2[ r * j + ell ] = double(j + ell + 2);
    302                 }
    303                 y2  = f.Forward(2, r, x2);
    304                 ok &= y2.size() == r*m;
     295                ok &= size_t( y1.size() ) == r*m;
     296
     297                // secondorder Taylor coefficients
     298                CPPAD_TESTVECTOR(double) x2(r*n), y2;
     299                for(ell = 0; ell < r; ell++)
     300                {       for(j = 0; j < n; j++)
     301                                x2[ r * j + ell ] = double(j + ell + 2);
     302                }
     303                y2  = f.Forward(2, r, x2);
     304                ok &= size_t( y2.size() ) == r*m;
    305305                //
    306306                // Y_0  (t)    = F[X_0(t)]
     
    355355                }
    356356                y1  = f.Forward(1, r, x1);
    357                 ok &= y1.size() == r*m;
    358 
    359                 // secondorder Taylor coefficients
    360                 CPPAD_TESTVECTOR(double) x2(r*n), y2;
    361                 for(ell = 0; ell < r; ell++)
    362                 {       for(j = 0; j < n; j++)
    363                                 x2[ r * j + ell ] = double(j + ell + 2);
    364                 }
    365                 y2  = f.Forward(2, r, x2);
    366                 ok &= y2.size() == r*m;
     357                ok &= size_t( y1.size() ) == r*m;
     358
     359                // secondorder Taylor coefficients
     360                CPPAD_TESTVECTOR(double) x2(r*n), y2;
     361                for(ell = 0; ell < r; ell++)
     362                {       for(j = 0; j < n; j++)
     363                                x2[ r * j + ell ] = double(j + ell + 2);
     364                }
     365                y2  = f.Forward(2, r, x2);
     366                ok &= size_t( y2.size() ) == r*m;
    367367                //
    368368                // Y_0  (t)    = F[X_0(t)]
     
    418418                }
    419419                y1  = f.Forward(1, r, x1);
    420                 ok &= y1.size() == r*m;
    421 
    422                 // secondorder Taylor coefficients
    423                 CPPAD_TESTVECTOR(double) x2(r*n), y2;
    424                 for(ell = 0; ell < r; ell++)
    425                 {       for(j = 0; j < n; j++)
    426                                 x2[ r * j + ell ] = double(j + ell + 2);
    427                 }
    428                 y2  = f.Forward(2, r, x2);
    429                 ok &= y2.size() == r*m;
     420                ok &= size_t( y1.size() ) == r*m;
     421
     422                // secondorder Taylor coefficients
     423                CPPAD_TESTVECTOR(double) x2(r*n), y2;
     424                for(ell = 0; ell < r; ell++)
     425                {       for(j = 0; j < n; j++)
     426                                x2[ r * j + ell ] = double(j + ell + 2);
     427                }
     428                y2  = f.Forward(2, r, x2);
     429                ok &= size_t( y2.size() ) == r*m;
    430430                //
    431431                // Y0_0 (t)     = X2_0(t)
     
    505505                }
    506506                y1  = f.Forward(1, r, x1);
    507                 ok &= y1.size() == r*m;
     507                ok &= size_t( y1.size() ) == r*m;
    508508
    509509                // secondorder Taylor coefficients
     
    514514                }
    515515                y2  = f.Forward(2, r, x2);
    516                 ok &= y2.size() == r*m;
     516                ok &= size_t( y2.size() ) == r*m;
    517517                //
    518518                double check = 0.0;
     
    570570                x0[0] = 2.2;
    571571                y0  = f.Forward(0, x0);
    572                 ok &= y0.size() == m;
     572                ok &= size_t( y0.size() ) == m;
    573573                ok &= NearEqual(y0[0], round_off(x0[0]) + x0[0], eps, eps);
    574574
     
    581581                }
    582582                y1  = f.Forward(1, r, x1);
    583                 ok &= y1.size() == r*m;
    584 
    585                 // secondorder Taylor coefficients
    586                 CPPAD_TESTVECTOR(double) x2(r*n), y2;
    587                 for(ell = 0; ell < r; ell++)
    588                 {       for(j = 0; j < n; j++)
    589                                 x2[ r * j + ell ] = double(j + ell + 2);
    590                 }
    591                 y2  = f.Forward(2, r, x2);
    592                 ok &= y2.size() == r*m;
     583                ok &= size_t( y1.size() ) == r*m;
     584
     585                // secondorder Taylor coefficients
     586                CPPAD_TESTVECTOR(double) x2(r*n), y2;
     587                for(ell = 0; ell < r; ell++)
     588                {       for(j = 0; j < n; j++)
     589                                x2[ r * j + ell ] = double(j + ell + 2);
     590                }
     591                y2  = f.Forward(2, r, x2);
     592                ok &= size_t( y2.size() ) == r*m;
    593593                //
    594594                //
     
    641641                }
    642642                y1  = f.Forward(1, r, x1);
    643                 ok &= y1.size() == r*m;
    644 
    645                 // secondorder Taylor coefficients
    646                 CPPAD_TESTVECTOR(double) x2(r*n), y2;
    647                 for(ell = 0; ell < r; ell++)
    648                 {       for(j = 0; j < n; j++)
    649                                 x2[ r * j + ell ] = double(j + ell + 2);
    650                 }
    651                 y2  = f.Forward(2, r, x2);
    652                 ok &= y2.size() == r*m;
     643                ok &= size_t( y1.size() ) == r*m;
     644
     645                // secondorder Taylor coefficients
     646                CPPAD_TESTVECTOR(double) x2(r*n), y2;
     647                for(ell = 0; ell < r; ell++)
     648                {       for(j = 0; j < n; j++)
     649                                x2[ r * j + ell ] = double(j + ell + 2);
     650                }
     651                y2  = f.Forward(2, r, x2);
     652                ok &= size_t( y2.size() ) == r*m;
    653653                //
    654654                // Y_0 (t)     = F[X_0(t)]
     
    700700                }
    701701                y1  = f.Forward(1, r, x1);
    702                 ok &= y1.size() == r*m;
     702                ok &= size_t( y1.size() ) == r*m;
    703703
    704704                // secondorder Taylor coefficients
     
    709709                }
    710710                y2  = f.Forward(2, r, x2);
    711                 ok &= y2.size() == r*m;
     711                ok &= size_t( y2.size() ) == r*m;
    712712                //
    713713                // Y_0 (t)     = F[X_0(t)]
     
    759759                }
    760760                y1  = f.Forward(1, r, x1);
    761                 ok &= y1.size() == r*m;
    762 
    763                 // secondorder Taylor coefficients
    764                 CPPAD_TESTVECTOR(double) x2(r*n), y2;
    765                 for(ell = 0; ell < r; ell++)
    766                 {       for(j = 0; j < n; j++)
    767                                 x2[ r * j + ell ] = double(j + ell + 2);
    768                 }
    769                 y2  = f.Forward(2, r, x2);
    770                 ok &= y2.size() == r*m;
     761                ok &= size_t( y1.size() ) == r*m;
     762
     763                // secondorder Taylor coefficients
     764                CPPAD_TESTVECTOR(double) x2(r*n), y2;
     765                for(ell = 0; ell < r; ell++)
     766                {       for(j = 0; j < n; j++)
     767                                x2[ r * j + ell ] = double(j + ell + 2);
     768                }
     769                y2  = f.Forward(2, r, x2);
     770                ok &= size_t( y2.size() ) == r*m;
    771771                //
    772772                // Y_0  (t)    = F[X_0(t)]
     
    825825                x0[1] = 3;
    826826                y0  = f.Forward(0, x0);
    827                 ok &= y0.size() == m;
     827                ok &= size_t( y0.size() ) == m;
    828828                // y[0] = avec[0] = x[0]
    829829                ok &= y0[0] == x0[0];
     
    839839                }
    840840                y1  = f.Forward(1, r, x1);
    841                 ok &= y1.size() == r*m;
    842 
    843                 // secondorder Taylor coefficients
    844                 CPPAD_TESTVECTOR(double) x2(r*n), y2;
    845                 for(ell = 0; ell < r; ell++)
    846                 {       for(j = 0; j < n; j++)
    847                                 x2[ r * j + ell ] = double(j + ell + 2);
    848                 }
    849                 y2  = f.Forward(2, r, x2);
    850                 ok &= y2.size() == r*m;
     841                ok &= size_t( y1.size() ) == r*m;
     842
     843                // secondorder Taylor coefficients
     844                CPPAD_TESTVECTOR(double) x2(r*n), y2;
     845                for(ell = 0; ell < r; ell++)
     846                {       for(j = 0; j < n; j++)
     847                                x2[ r * j + ell ] = double(j + ell + 2);
     848                }
     849                y2  = f.Forward(2, r, x2);
     850                ok &= size_t( y2.size() ) == r*m;
    851851                //
    852852                // Y0_0 (t)    = 2.0 + 1t + 2t^2
     
    910910                }
    911911                y1  = f.Forward(1, r, x1);
    912                 ok &= y1.size() == r*m;
     912                ok &= size_t( y1.size() ) == r*m;
    913913
    914914                // secondorder Taylor coefficients
     
    919919                }
    920920                y2  = f.Forward(2, r, x2);
    921                 ok &= y2.size() == r*m;
     921                ok &= size_t( y2.size() ) == r*m;
    922922                //
    923923                // Y_0 (t)     = F[X_0(t)]
     
    968968                }
    969969                y1  = f.Forward(1, r, x1);
    970                 ok &= y1.size() == r*m;
    971 
    972                 // secondorder Taylor coefficients
    973                 CPPAD_TESTVECTOR(double) x2(r*n), y2;
    974                 for(ell = 0; ell < r; ell++)
    975                 {       for(j = 0; j < n; j++)
    976                                 x2[ r * j + ell ] = double(j + ell + 2);
    977                 }
    978                 y2  = f.Forward(2, r, x2);
    979                 ok &= y2.size() == r*m;
     970                ok &= size_t( y1.size() ) == r*m;
     971
     972                // secondorder Taylor coefficients
     973                CPPAD_TESTVECTOR(double) x2(r*n), y2;
     974                for(ell = 0; ell < r; ell++)
     975                {       for(j = 0; j < n; j++)
     976                                x2[ r * j + ell ] = double(j + ell + 2);
     977                }
     978                y2  = f.Forward(2, r, x2);
     979                ok &= size_t( y2.size() ) == r*m;
    980980                //
    981981                // Y_0  (t)    = 0.0
     
    10191019                }
    10201020                y1  = f.Forward(1, r, x1);
    1021                 ok &= y1.size() == r*m;
    1022 
    1023                 // secondorder Taylor coefficients
    1024                 CPPAD_TESTVECTOR(double) x2(r*n), y2;
    1025                 for(ell = 0; ell < r; ell++)
    1026                 {       for(j = 0; j < n; j++)
    1027                                 x2[ r * j + ell ] = double(j + ell + 2);
    1028                 }
    1029                 y2  = f.Forward(2, r, x2);
    1030                 ok &= y2.size() == r*m;
     1021                ok &= size_t( y1.size() ) == r*m;
     1022
     1023                // secondorder Taylor coefficients
     1024                CPPAD_TESTVECTOR(double) x2(r*n), y2;
     1025                for(ell = 0; ell < r; ell++)
     1026                {       for(j = 0; j < n; j++)
     1027                                x2[ r * j + ell ] = double(j + ell + 2);
     1028                }
     1029                y2  = f.Forward(2, r, x2);
     1030                ok &= size_t( y2.size() ) == r*m;
    10311031                //
    10321032                // Y0_0 (t)    = 0.5 + 1t + 2t^2
     
    10851085                x0[0] = -3.0;
    10861086                y0  = f.Forward(0, x0);
    1087                 ok &= y0.size() == m;
     1087                ok &= size_t( y0.size() ) == m;
    10881088                ok &= NearEqual(y0[0], CppAD::abs(x0[0]), eps, eps);
    10891089
     
    10961096                }
    10971097                y1  = f.Forward(1, r, x1);
    1098                 ok &= y1.size() == r*m;
    1099 
    1100                 // secondorder Taylor coefficients
    1101                 CPPAD_TESTVECTOR(double) x2(r*n), y2;
    1102                 for(ell = 0; ell < r; ell++)
    1103                 {       for(j = 0; j < n; j++)
    1104                                 x2[ r * j + ell ] = double(j + ell + 2);
    1105                 }
    1106                 y2  = f.Forward(2, r, x2);
    1107                 ok &= y2.size() == r*m;
     1098                ok &= size_t( y1.size() ) == r*m;
     1099
     1100                // secondorder Taylor coefficients
     1101                CPPAD_TESTVECTOR(double) x2(r*n), y2;
     1102                for(ell = 0; ell < r; ell++)
     1103                {       for(j = 0; j < n; j++)
     1104                                x2[ r * j + ell ] = double(j + ell + 2);
     1105                }
     1106                y2  = f.Forward(2, r, x2);
     1107                ok &= size_t( y2.size() ) == r*m;
    11081108                //
    11091109                //
     
    11581158                }
    11591159                y1  = f.Forward(1, r, x1);
    1160                 ok &= y1.size() == r*m;
    1161 
    1162                 // secondorder Taylor coefficients
    1163                 CPPAD_TESTVECTOR(double) x2(r*n), y2;
    1164                 for(ell = 0; ell < r; ell++)
    1165                 {       for(j = 0; j < n; j++)
    1166                                 x2[ r * j + ell ] = double(j + ell + 2);
    1167                 }
    1168                 y2  = f.Forward(2, r, x2);
    1169                 ok &= y2.size() == r*m;
     1160                ok &= size_t( y1.size() ) == r*m;
     1161
     1162                // secondorder Taylor coefficients
     1163                CPPAD_TESTVECTOR(double) x2(r*n), y2;
     1164                for(ell = 0; ell < r; ell++)
     1165                {       for(j = 0; j < n; j++)
     1166                                x2[ r * j + ell ] = double(j + ell + 2);
     1167                }
     1168                y2  = f.Forward(2, r, x2);
     1169                ok &= size_t( y2.size() ) == r*m;
    11701170                //
    11711171                // Y_0  (t)    = F[X_0(t)]
     
    12201220                }
    12211221                y1  = f.Forward(1, r, x1);
    1222                 ok &= y1.size() == r*m;
    1223 
    1224                 // secondorder Taylor coefficients
    1225                 CPPAD_TESTVECTOR(double) x2(r*n), y2;
    1226                 for(ell = 0; ell < r; ell++)
    1227                 {       for(j = 0; j < n; j++)
    1228                                 x2[ r * j + ell ] = double(j + ell + 2);
    1229                 }
    1230                 y2  = f.Forward(2, r, x2);
    1231                 ok &= y2.size() == r*m;
     1222                ok &= size_t( y1.size() ) == r*m;
     1223
     1224                // secondorder Taylor coefficients
     1225                CPPAD_TESTVECTOR(double) x2(r*n), y2;
     1226                for(ell = 0; ell < r; ell++)
     1227                {       for(j = 0; j < n; j++)
     1228                                x2[ r * j + ell ] = double(j + ell + 2);
     1229                }
     1230                y2  = f.Forward(2, r, x2);
     1231                ok &= size_t( y2.size() ) == r*m;
    12321232                //
    12331233                // Y_0  (t)    = F[X_0(t)]
     
    12811281                }
    12821282                y1  = f.Forward(1, r, x1);
    1283                 ok &= y1.size() == r*m;
     1283                ok &= size_t( y1.size() ) == r*m;
    12841284
    12851285                // secondorder Taylor coefficients
     
    12901290                }
    12911291                y2  = f.Forward(2, r, x2);
    1292                 ok &= y2.size() == r*m;
     1292                ok &= size_t( y2.size() ) == r*m;
    12931293                //
    12941294                // Y_0 (t)     = F[X_0(t)]
     
    13411341                }
    13421342                y1  = f.Forward(1, r, x1);
    1343                 ok &= y1.size() == r*m;
    1344 
    1345                 // secondorder Taylor coefficients
    1346                 CPPAD_TESTVECTOR(double) x2(r*n), y2;
    1347                 for(ell = 0; ell < r; ell++)
    1348                 {       for(j = 0; j < n; j++)
    1349                                 x2[ r * j + ell ] = double(j + ell + 2);
    1350                 }
    1351                 y2  = f.Forward(2, r, x2);
    1352                 ok &= y2.size() == r*m;
     1343                ok &= size_t( y1.size() ) == r*m;
     1344
     1345                // secondorder Taylor coefficients
     1346                CPPAD_TESTVECTOR(double) x2(r*n), y2;
     1347                for(ell = 0; ell < r; ell++)
     1348                {       for(j = 0; j < n; j++)
     1349                                x2[ r * j + ell ] = double(j + ell + 2);
     1350                }
     1351                y2  = f.Forward(2, r, x2);
     1352                ok &= size_t( y2.size() ) == r*m;
    13531353                //
    13541354                // Y_0 (t)     = F[X_0(t)]
     
    14001400                }
    14011401                y1  = f.Forward(1, r, x1);
    1402                 ok &= y1.size() == r*m;
    1403 
    1404                 // secondorder Taylor coefficients
    1405                 CPPAD_TESTVECTOR(double) x2(r*n), y2;
    1406                 for(ell = 0; ell < r; ell++)
    1407                 {       for(j = 0; j < n; j++)
    1408                                 x2[ r * j + ell ] = double(j + ell + 2);
    1409                 }
    1410                 y2  = f.Forward(2, r, x2);
    1411                 ok &= y2.size() == r*m;
     1402                ok &= size_t( y1.size() ) == r*m;
     1403
     1404                // secondorder Taylor coefficients
     1405                CPPAD_TESTVECTOR(double) x2(r*n), y2;
     1406                for(ell = 0; ell < r; ell++)
     1407                {       for(j = 0; j < n; j++)
     1408                                x2[ r * j + ell ] = double(j + ell + 2);
     1409                }
     1410                y2  = f.Forward(2, r, x2);
     1411                ok &= size_t( y2.size() ) == r*m;
    14121412                //
    14131413                // Y_0  (t)    = F[X_0(t)]
     
    14771477                }
    14781478                y1  = f.Forward(1, r, x1);
    1479                 ok &= y1.size() == r*m;
    1480 
    1481                 // secondorder Taylor coefficients
    1482                 CPPAD_TESTVECTOR(double) x2(r*n), y2;
    1483                 for(ell = 0; ell < r; ell++)
    1484                 {       for(j = 0; j < n; j++)
    1485                                 x2[ r * j + ell ] = double(j + ell + 2);
    1486                 }
    1487                 y2  = f.Forward(2, r, x2);
    1488                 ok &= y2.size() == r*m;
     1479                ok &= size_t( y1.size() ) == r*m;
     1480
     1481                // secondorder Taylor coefficients
     1482                CPPAD_TESTVECTOR(double) x2(r*n), y2;
     1483                for(ell = 0; ell < r; ell++)
     1484                {       for(j = 0; j < n; j++)
     1485                                x2[ r * j + ell ] = double(j + ell + 2);
     1486                }
     1487                y2  = f.Forward(2, r, x2);
     1488                ok &= size_t( y2.size() ) == r*m;
    14891489                //
    14901490                // Y0_0 (t)    = 0.5 + 1t + 2t^2
  • trunk/test_more/makefile.am

    r3682 r3683  
    120120        erf.cpp \
    121121        exp.cpp \
     122        expm1.cpp \
    122123        extern_value.cpp \
    123124        extern_value.hpp \
  • trunk/test_more/makefile.in

    r3682 r3683  
    109109        compare.cpp compare_change.cpp cond_exp.cpp cond_exp_ad.cpp \
    110110        cond_exp_rev.cpp copy.cpp cos.cpp cosh.cpp dbl_epsilon.cpp \
    111         div.cpp div_eq.cpp div_zero_one.cpp erf.cpp exp.cpp \
     111        div.cpp div_eq.cpp div_zero_one.cpp erf.cpp exp.cpp expm1.cpp \
    112112        extern_value.cpp extern_value.hpp for_hess.cpp \
    113113        for_sparse_jac.cpp forward.cpp forward_dir.cpp \
     
    137137        cos.$(OBJEXT) cosh.$(OBJEXT) dbl_epsilon.$(OBJEXT) \
    138138        div.$(OBJEXT) div_eq.$(OBJEXT) div_zero_one.$(OBJEXT) \
    139         erf.$(OBJEXT) exp.$(OBJEXT) extern_value.$(OBJEXT) \
    140         for_hess.$(OBJEXT) for_sparse_jac.$(OBJEXT) forward.$(OBJEXT) \
     139        erf.$(OBJEXT) exp.$(OBJEXT) expm1.$(OBJEXT) \
     140        extern_value.$(OBJEXT) for_hess.$(OBJEXT) \
     141        for_sparse_jac.$(OBJEXT) forward.$(OBJEXT) \
    141142        forward_dir.$(OBJEXT) forward_order.$(OBJEXT) \
    142143        from_base.$(OBJEXT) fun_check.$(OBJEXT) jacobian.$(OBJEXT) \
     
    356357cppad_compiler_has_atanh = @cppad_compiler_has_atanh@
    357358cppad_compiler_has_erf = @cppad_compiler_has_erf@
     359cppad_compiler_has_expm1 = @cppad_compiler_has_expm1@
    358360cppad_cppadvector = @cppad_cppadvector@
     361cppad_cxx_flags = @cppad_cxx_flags@
    359362cppad_description = @cppad_description@
    360363cppad_eigenvector = @cppad_eigenvector@
     
    362365cppad_has_cstdint_8_to_64 = @cppad_has_cstdint_8_to_64@
    363366cppad_has_gettimeofday = @cppad_has_gettimeofday@
     367cppad_has_high_resolution_clock = @cppad_has_high_resolution_clock@
    364368cppad_has_nullptr = @cppad_has_nullptr@
    365369cppad_has_rvalue = @cppad_has_rvalue@
     
    508512        erf.cpp \
    509513        exp.cpp \
     514        expm1.cpp \
    510515        extern_value.cpp \
    511516        extern_value.hpp \
     
    651656@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/erf.Po@am__quote@
    652657@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/exp.Po@am__quote@
     658@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/expm1.Po@am__quote@
    653659@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/extern_value.Po@am__quote@
    654660@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/for_hess.Po@am__quote@
  • trunk/test_more/tan.cpp

    r3301 r3683  
    11/* $Id$ */
    22/* --------------------------------------------------------------------------
    3 CppAD: C++ Algorithmic Differentiation: Copyright (C) 2003-14 Bradley M. Bell
     3CppAD: C++ Algorithmic Differentiation: Copyright (C) 2003-15 Bradley M. Bell
    44
    55CppAD is distributed under multiple licenses. This distribution is under
    6 the terms of the 
     6the terms of the
    77                    Eclipse Public License Version 1.0.
    88
     
    2424                using CppAD::NearEqual;
    2525                double eps = 10. * std::numeric_limits<double>::epsilon();
    26        
     26
    2727                // domain space vector
    2828                size_t n = 1;
    2929                CPPAD_TESTVECTOR(AD<double>) ax(n);
    30                 ax[0] = 0.5; 
    31        
     30                ax[0] = 0.5;
     31
    3232                // declare independent variables and starting recording
    3333                CppAD::Independent(ax);
    34        
     34
    3535                // range space vector
    3636                size_t m = 1;
    3737                CPPAD_TESTVECTOR(AD<double>) ay(m);
    3838                ay[0] = tan( ax[0] );
    39        
     39
    4040                // create f: x -> y and stop tape recording
    4141                CppAD::ADFun<double> f(ax, ay);
    42        
     42
    4343                // first order Taylor coefficient
    4444                CPPAD_TESTVECTOR(double) x1(n), y1;
    4545                x1[0] = 2.0;
    4646                y1    = f.Forward(1, x1);
    47                 ok   &= y1.size() == m;
    48                
     47                ok   &= size_t( y1.size() ) == m;
     48
    4949                // secondorder Taylor coefficients
    5050                CPPAD_TESTVECTOR(double) x2(n), y2;
    5151                x2[0] = 0.0;
    5252                y2    = f.Forward(2, x2);
    53                 ok   &= y2.size() == m;
    54                 // 
    55                 // Y  (t)    = F[X_0(t)] 
     53                ok   &= size_t( y2.size() ) == m;
     54                //
     55                // Y  (t)    = F[X_0(t)]
    5656                //           =  tan(0.5 + 2t )
    5757                // Y' (t)    =  2 * cos(0.5 + 2t )^(-2)
     
    6060                ok  &= NearEqual(y1[0] , check, eps, eps);
    6161                //
    62                 // Y''(0)    = 8*cos(0.5)^(-3)*sin(0.5) 
     62                // Y''(0)    = 8*cos(0.5)^(-3)*sin(0.5)
    6363                check = 8.0 * tan(0.5) * sec_sq / 2.0;
    6464                ok    &= NearEqual(y2[0] , check, eps, eps);
     
    7171                using CppAD::AD;
    7272                using CppAD::NearEqual;
    73        
     73
    7474                // independent variable vector, indices, values, and declaration
    7575                size_t n = 1;
     
    7777                ax[0]     = .7;
    7878                Independent(ax);
    79        
     79
    8080                // dependent variable vector and indices
    8181                size_t m = 1;
     
    8484                        ay[0] = atan( tan( ax[0] ) );
    8585                else    ay[0] = tan( atan( ax[0] ) );
    86        
    87                 // check value 
     86
     87                // check value
    8888                ok &= NearEqual(ax[0] , ay[0],  eps, eps);
    89        
     89
    9090                // create f: x -> y and vectors used for derivative calculations
    91                 CppAD::ADFun<double> f(ax, ay); 
     91                CppAD::ADFun<double> f(ax, ay);
    9292                CPPAD_TESTVECTOR(double) dx(n), dy(m);
    93        
     93
    9494                // forward computation of partials w.r.t. x
    9595                dx[0] = 1.;
     
    102102                        ok   &= NearEqual(dy[0], 0e0, eps, eps);
    103103                }
    104        
     104
    105105                // reverse computation of order partial
    106106                CPPAD_TESTVECTOR(double)  w(m), dw(n * order);
     
    110110                for(p = 1; p < order; p++)
    111111                        ok   &= NearEqual(dw[p], 0e0, eps, eps);
    112        
     112
    113113                return ok;
    114114        }
     
    118118                using CppAD::AD;
    119119                using CppAD::NearEqual;
    120        
     120
    121121                // independent variable vector, indices, values, and declaration
    122122                size_t n = 1;
     
    124124                ax[0]     = .5;
    125125                Independent(ax);
    126        
     126
    127127                // dependent variable vector and indices
    128128                size_t m = 1;
     
    137137                        ay[0] = tanh(z);
    138138                }
    139                 // check value 
     139                // check value
    140140                ok &= NearEqual(ax[0] , ay[0],  eps, eps);
    141        
     141
    142142                // create f: x -> y and vectors used for derivative calculations
    143                 CppAD::ADFun<double> f(ax, ay); 
     143                CppAD::ADFun<double> f(ax, ay);
    144144                CPPAD_TESTVECTOR(double) dx(n), dy(m);
    145        
     145
    146146                // forward computation of partials w.r.t. x
    147147                dx[0] = 1.;
     
    154154                        ok   &= NearEqual(dy[0], 0e0, eps, eps);
    155155                }
    156        
     156
    157157                // reverse computation of order partial
    158158                CPPAD_TESTVECTOR(double)  w(m), dw(n * order);
     
    162162                for(p = 1; p < order; p++)
    163163                        ok   &= NearEqual(dw[p], 0e0, eps, eps);
    164        
     164
    165165                return ok;
    166166        }
  • trunk/test_more/test_more.cpp

    r3682 r3683  
    5151extern bool erf(void);
    5252extern bool Exp(void);
     53extern bool expm1(void);
    5354extern bool ForHess(void);
    5455extern bool for_sparse_jac(void);
     
    165166        ok &= Run( erf,             "erf"            );
    166167        ok &= Run( Exp,             "Exp"            );
     168        ok &= Run( expm1,           "expm1"          );
    167169        ok &= Run( ForHess,         "ForHess"        );
    168170        ok &= Run( for_sparse_jac,  "for_sparse_jac" );
  • trunk/test_more/test_one.sh.in

    r3679 r3683  
    2525        exit 1
    2626fi
    27 fun=`grep "^bool *[a-zA-Z0-9_]*( *void *)" $1 | tail -1 | \
     27fun=`grep "^bool *[a-zA-Z0-9_]* *( *void *)" $1 | tail -1 | \
    2828        sed -e "s/^bool *\([a-zA-Z0-9_]*\) *( *void *)/\1/"`
    2929if [ -e test_one.exe ]
Note: See TracChangeset for help on using the changeset viewer.