source: trunk/omh/whats_new/whats_new_15.omh @ 3607

Last change on this file since 3607 was 3607, checked in by bradbell, 5 years ago

merge to branch: trunk
from repository:
start hash code: f4baab0ea7c2679ba9351b0439b6efebfa77ba04
end hash code: 894d554a00ceec8a3545f05eca62708a7b5cb43d

commit 894d554a00ceec8a3545f05eca62708a7b5cb43d
Author: Brad Bell <bradbell@…>
Date: Tue Jan 20 09:06:10 2015 -0700

Fix copyright end date.

whats_new_15.omh: Add comment about date of deprecation.

commit 611e982000168db91aba22b763c14bb78d57da47
Author: Brad Bell <bradbell@…>
Date: Tue Jan 20 08:53:00 2015 -0700

Squashed commit from old/compare_op to master:

In addition, fix copyright end date for some files, and add note about
deprecated date in whats_new_15.omh.

commit 6e46df5c850ecd58d7a886db4043bc3f2d4579d1
Author: Brad Bell <bradbell@…>
Date: Tue Jan 20 08:16:57 2015 -0700

Always return f.compare_change_op_index() == 0 after f.optimize().

checkpoint.hpp: ignore comparison operators.
fun_construct.hpp: remove double initilaization of values.
compare_change.cpp: demonstrate more features of new interface.
whats_new_15.omh: prepare for merging this branch into master.
wish_list.omh: update wish list item to new compare_change interface.

commit 45315907c70e5b383d984fb9498b54a474001af0
Author: Brad Bell <bradbell@…>
Date: Tue Jan 20 05:04:37 2015 -0700

Use the new f.compare_change_count(0) option in speed tests.

commit bb6e72befd6d01f1fb62c43b9b19471ffaa7cc2c
Author: Brad Bell <bradbell@…>
Date: Tue Jan 20 04:51:16 2015 -0700

Move CompareChange? -> deprecated and plan -> compare_change.

forward0sweep.hpp: skip comparison operator when count is zero.
forward1sweep.hpp: skip comparison operator when count is zero.
compare_change.cpp: demonstrate count == 0 case.

commit 622a13c568c612d9dfe9ccd1a01f4ac5f74ba824
Author: Brad Bell <bradbell@…>
Date: Mon Jan 19 23:17:42 2015 -0700

Add example and test of new compare change user API.

ad_fun.hpp: fix f.compare_change_op_index.
compare_change.cpp: Change example to use new API.
compare_change.cpp: Move old example here (just test now).

commit ec4c1613eae8df56fbf31e7b8711ce69cc41df83
Author: Brad Bell <bradbell@…>
Date: Mon Jan 19 21:12:11 2015 -0700

Implement the compare change plan, still needs an example and test.
Also have the change from 'plan' to just plain documentation.

commit a81a46f27011bee08ba072551044dc9f4a99a906
Author: Brad Bell <bradbell@…>
Date: Mon Jan 19 17:49:05 2015 -0700

Change name of compare_change functions and partially implement this new plan.

commit 146faad48a700a56362e74f9c3a3c39144a79738
Author: Brad Bell <bradbell@…>
Date: Mon Jan 19 14:22:40 2015 -0700

Branch: compare_op
plan.omh: change name of count function.

commit 35d91d126765d1a0ab4bfe9e2b006bbf535cd648
Author: Brad Bell <bradbell@…>
Date: Mon Jan 19 13:19:07 2015 -0700

Add deprecation date for some more cases.

commit 5bb65a8c48fae4263b66fcd04520e10e66febc11
Author: Brad Bell <bradbell@…>
Date: Mon Jan 19 13:13:51 2015 -0700

Add date of deprecation for some more cases.

commit e95ee6b209601cd9a075d2e37c602e73c32fb6ab
Author: Brad Bell <bradbell@…>
Date: Mon Jan 19 12:58:44 2015 -0700

Add date of deprecation for some more cases.

commit 0ea84ccd87383edc62a6ae1711da104b12e8c444
Author: Brad Bell <bradbell@…>
Date: Mon Jan 19 12:47:01 2015 -0700

Add date of deprecation for some cases.

commit 17755e609ea8e03472b08dcc2fb5ad347eb723cb
Author: Brad Bell <bradbell@…>
Date: Mon Jan 19 08:20:45 2015 -0700

plan.omh: changs some names.

commit 29f369c06d4d0ee284c4c668d52d8461613066dc
Author: Brad Bell <bradbell@…>
Date: Fri Jan 16 06:39:45 2015 -0700

Document the plan for compare_change user API.

compare_change.omh: fix minor typo.
plan.txt: change to the omhelp file plan.omh.

commit a3a2f4dedd202a722812b6eb2714851b40726e6e
Author: Brad Bell <bradbell@…>
Date: Thu Jan 15 21:03:44 2015 -0700 remove unused variable. move repository from github/bradbell to coin-or/bradbell.

commit 3751a197ab2897e76616f9d9b0915148bd855356
Author: Brad Bell <bradbell@…>
Date: Thu Jan 15 20:56:17 2015 -0700

plan.txt: plan for this branches API will go here.

commit 76013ec2ad7baacdeab5e761812d542867910174
Author: Brad Bell <bradbell@…>
Date: Thu Jan 15 18:04:33 2015 -0700

Store the operator index for the first comparision change in the ADFun object.

commit 9caf25014079a60df5de17bcac76775daf8ee201
Author: Brad Bell <bradbell@…>
Date: Thu Jan 15 12:45:56 2015 -0700

Make compare_change a parameter (so will be easy to add compare_first).

commit 2246d22fe82b8909d432f82ab0d783ce3351a02f
Author: Brad Bell <bradbell@…>
Date: Thu Jan 15 09:12:40 2015 -0700 fix directory (before cd).

commit b3910de86558a97749741bfb728e45c5a86d1c73
Author: Brad Bell <bradbell@…>
Date: Thu Jan 15 05:14:01 2015 -0700 use git to get list of source files.
ad_fun.hpp: imporve doxygen doc for compare_change_.
ad_tape.hpp: remove RecordCompare? (no longer used).
atomic_base.hpp: minor edit to user documentation.

commit dd74f331386cadc9cc272c264296e575691aa3f8
Author: Brad Bell <bradbell@…>
Date: Thu Jan 15 04:12:34 2015 -0700

Change Leq..Op -> Le..Op and leq.._op -> le.._op.

commit ae729296323eb7f4f4a7c0e90a303a8d7f4ed42a
Author: Brad Bell <bradbell@…>
Date: Wed Jan 14 21:19:55 2015 -0700

comp_op.hpp: Add doxygen documentaiton for compare operators.
compare.hpp: avoid an extra branch.

commit b064d59a5ad01dff5c708cc8c02f628f58c863ec
Author: Brad Bell <bradbell@…>
Date: Wed Jan 14 16:11:25 2015 -0700

Remove ComOp?, replaced by specific cases Eq..Op, Ne..Op, Leq..Op, Lt..Op,
which should run faster.

forward0sweep.hpp: Remove out-dated comment about CompOp?.
forward1sweep.hpp: Remove out-dated comment about CompOp?.

commit 5bb0a70d1151e9086b88024050cea6cf11e83aa7
Author: Brad Bell <bradbell@…>
Date: Wed Jan 14 09:02:17 2015 -0700

Use Eq..Op, Ne..Op to implement == and !=.

commit 0ebeec61bc040a00c50db41ca5da31fb87194f93
Author: Brad Bell <bradbell@…>
Date: Wed Jan 14 07:19:26 2015 -0700

compare.hpp: Finish folding < <= > >= into Lt..Op and Leq..Op.

commit c949e5b72158b98cbab61c8aea98e76008e9c2f4
Author: Brad Bell <bradbell@…>
Date: Wed Jan 14 06:28:41 2015 -0700

  1. Change plan to fold all compare operations into Leq..Op and Lt..Op cases.
  2. Fix alphabetical order between Ld and Leq.

commit 6ffee88b68b682359d62bc75a8c2ba3e28d012ac
Author: Brad Bell <bradbell@…>
Date: Tue Jan 13 22:40:18 2015 -0700

Splite parameter <= variable and parameter > variable as separate compare

commit 0841014db4ead690d1c2358f5e09494030ae1e5f
Author: Brad Bell <bradbell@…>
Date: Tue Jan 13 21:12:57 2015 -0700

Attempting to recording and playback of compare operators faster:
Split variable <= variable and variable > variable out as separate cases.

compare.hpp: remove white space at end of lines.

commit cfd3afceebd4b3383b3042cbca98caf82ff77670
Author: Brad Bell <bradbell@…>
Date: Tue Jan 13 08:39:12 2015 -0700 compare speed_cppad between two git branches. correct list of options, remove unused variable.
wish_list.omh: correct discussion of effect of keeping compare operators.

commit 9ed03e1ee2c258ca38561ad083067e235d032e14
Author: Brad Bell <bradbell@…>
Date: Tue Jan 13 05:54:30 2015 -0700

Change test so it corresponds to optimization keeping compare operators.

commit 5c418d477d58984b094bba027ebb0794e759e557
Author: Brad Bell <bradbell@…>
Date: Tue Jan 13 05:12:50 2015 -0700

Include example and test of using CompareChange? with optimized tape.

commit c1b48edfa56ca096ce8c2db1dbadb2658cb13fe3
Author: Brad Bell <bradbell@…>
Date: Tue Jan 13 04:24:54 2015 -0700

Fix optimization so variables used in compare opertions are alwasy available.

commit 6fe607ca30db07b356fd3a9fe9779fa2dfd382d8
Author: Brad Bell <bradbell@…>
Date: Mon Jan 12 07:56:41 2015 -0700

Keep CompareChange? in optimized versions of tape and when NDEBUG is defined.

commit b4c0e51489cc0878499a331b4af4875b2781d8d8
Author: Brad Bell <bradbell@…>
Date: Sun Jan 11 17:01:59 2015 -0700 final procedure (only hand tested).

File size: 4.2 KB
2/* --------------------------------------------------------------------------
3CppAD: C++ Algorithmic Differentiation: Copyright (C) 2003-15 Bradley M. Bell
5CppAD is distributed under multiple licenses. This distribution is under
6the terms of the
7                    Eclipse Public License Version 1.0.
9A copy of this license is included in the COPYING file of this distribution.
10Please visit for information on other licenses.
11-------------------------------------------------------------------------- */
13$begin whats_new_15$$
14$dollar @$$
16        op
17        onetape
18        CppAD
19        colpack
20        hes
21        cppad
22        Jacobian
25$section CppAD Changes and Additions During 2015$$
27$head Introduction$$
28This section contains a list of the changes to CppAD during 2015
29(in reverse order by date).
30The purpose of this section is to
31assist you in learning about changes between various versions of CppAD.
33$head 01-20$$
34$list number$$
35The new $cref compare_change$$ interface has been created
36and the old $cref CompareChange$$ function has been deprecated;
37see the $cref compare_change.cpp$$ example.
38This enables one to determine the source code during taping
39that corresponds to changes in the comparisons during
40$cref/zero order forward/forward_zero/$$ operations; see
44This new $cref compare_change$$ interface can detect comparison changes
45even if $cref/NDEBUG/Faq/Speed/NDEBUG/$$ is defined and
46even if $cref/f.optimize()/optimize/$$ has been called.
47The deprecated function $code CompareChange$$ used to always return zero after
49        %f%.optimize()
51and was not even defined when $code NDEBUG$$ was defined.
52There was a resulting speed effect for this; see the wish list
53$cref/compare change/WishList/Optimization/Comparison Changes/$$ entry.
56The date when some features where deprecated has been added to the
57documentation. For example, see
58$cref/Deprecated 2006-12-17/include_deprecated/Deprecated 2006-12-17/$$.
61$head 01-09$$
62$list number$$
63The change 01-07 below included (but did not mention) using
64a sparse, instead of full, structure for the Hessian in the test.
65This has also been done for the
66$cref/sparse Jacobian/link_sparse_jacobian/$$ test.
68For both the
69$cref/sparse_jacobian/link_sparse_jacobian/$$ and
70$cref/sparse_hessian/link_sparse_hessian/$$ tests,
71the sparse function is only chosen once
72(it used to be different for every repeat).
73This reduced the amount of computation not connected what is being tested.
74It also make the $cref/onetape/speed_main/option_list/onetape/$$ a valid
75option for these tests.
77There was a bug in the
78$cref/multiple direction forward/forward_dir/$$ routine.
79Results for function values that are
80$cref/parameter/parvar/$$ were not being computed properly
81(all the derivatives are zero in this case).
82This has been fixed.
86$head 01-07$$
87The following changes were merged in from the $code color_hes$$ branch:
88$list number$$
89Specify the type of
91for the sparse hessian calculations.
92To be specific, instead of $code "cppad"$$ and $code "colpack"$$,
93the choices are $code "cppad.symmetric"$$, $code "cppad.general"$$,
94and $code ""$$.
95This is not compatible with the change on
96$cref/01-02/whats_new_15/01-02/$$, which was so recent
97that this should not be a problem.
99The $cref/n_sweep/link_sparse_hessian/n_sweep/$$ values were
100not being returned properly by
101$cref cppad_sparse_hessian.cpp$$ and
102$cref adolc_sparse_hessian.cpp$$.
103The CppAD version has been fixed and the ADOL-C version
104has been set to zero.
106The $cref link_sparse_hessian$$ example case was to sparse for good
107testing (by mistake).
108This has been fixed.
110Add $icode n_sweep$$ to
111$cref/link_sparse_hessian/link_sparse_hessian/n_sweep/$$ and
112$cref/speed_main/speed_main/Speed Results/n_sweep/$$.
114Change the $code cppad$$ sparse Hessian
116to take advantage of the symmetry of the Hessian
117(in a similar fashion to the $code colpack$$ coloring method).
120$head 01-02$$
121Added to option to uses
122$cref/colpack/colpack_prefix/$$ for the sparse Hessian
123$cref/coloring method/sparse_hessian/work/color_method/$$;
124see the example $cref colpack_hes.cpp$$.
Note: See TracBrowser for help on using the repository browser.