Changeset 537 for trunk/ADOL-C/include


Ignore:
Timestamp:
Aug 15, 2014 10:10:48 AM (5 years ago)
Author:
kulshres
Message:

Merge changes from branch 'master' of 'gitclone' into 'svn'

The following changes have been merged:

commit 86c6feecd3bec771574ca75447082e7fdd57ec9e
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Fri Aug 15 14:22:15 2014 +0200

add new file to windows build too

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 5c30f52c15c12a98fcfb4fc1718d5be89d4e055e
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Fri Aug 15 14:17:53 2014 +0200

Since we've broken tape format and ABI let's check properly

This tape is not consistent with those created by version 2.5.1
so check for 2.5.2 which may or may not be released. The next
version would most probably be 2.6.0

Also increment current version so check doesn't fail.

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 766d7547631a296c87a35acb2e7bde09a987ee4f
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Fri Aug 15 14:02:28 2014 +0200

Add a simple example using parameters

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 9a218ac29568a22e556dfaf64726402e800edb09
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Fri Aug 15 14:01:19 2014 +0200

forward and reverse implementation for new opcodes

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 9797dda86306918dadea276599b8773d0016e731
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Fri Aug 15 14:00:53 2014 +0200

add implementations for new operators and functions

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 6e8618758d0c6ee6386516d89f67de3f88bfe51b
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Fri Aug 15 13:59:53 2014 +0200

add new file to build

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 0b67706cd4de32c30d14e67b9b59996ccb4a5fe6
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Fri Aug 15 13:59:37 2014 +0200

Discard parameters from value tape in reverse mode

Since parameters are read from value tape during
read_tape_stats already, we must simply discard them
when from the back of the value tape when opening it
for reverse mode.

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 388f43fc0cb8732a2a8c717ed7fbc2b03af5695e
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Fri Aug 15 13:52:17 2014 +0200

Store and retrieve parameters from disk tapes

At the end of tracing in stop_trace we can copy the
parameters from the tracing store in GlobalTapeVars?
to the store in PersistentTapeInfos?. This way, we can
trace a different function after this one, with a
different set of parameters.

Also store these parameters contiguously at the end of
the value tape for persistence. These should be read at
the same time as the stats are read from disk tapes
when opening them, so that we can call forward and
reverse directly without any changes.

One can call set_param_vec() on any tape, if one wishes
to replace the parameters with new ones, before calling
forward. Taylor stack is invalidated if one does this,
so forward must be called before reverse.

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 4de6c1d76c380c99eea898df18d4bd166d9b07d7
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Fri Aug 15 13:51:17 2014 +0200

create space and methods for tracing the parameters

we can use a separate StoreManager? to manage the indices
of the parameters during tracing. Do this in GlobalTapeVars?
just like for the active store.

The difference is that parameters don't get overwritten so
the management is really much simpler. This indices will all
only be freed once taping is complete.

Also add constructors and methods to tag parameters in user
code in a new file.

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 2fd6d8b09d804f30a2723360d5283c53bcb4ee35
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Fri Aug 15 13:09:32 2014 +0200

Do not use memcpy to copy tape structures

using memcpy for copying the tape structure is wrong
for the same reason that using memset to initialize them
is wrong. So create a member function to copy which
uses the addresses of the fields directly.

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 4b9964a7821e4861f5fb4880c56e346abba4155d
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Fri Aug 15 13:05:00 2014 +0200

clean up the initialization of tape stuctures

Firstly we need space to store parameters in
PersistentTapeInfos? since the parameters must survive
tape reuse.

Since we can use constructors and destructors, use them
also setting the structure to zero using memset is not
good. It may clobber information from C++. Do the zero
setting using the address of the fields inside the
constructor.

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 427b164acf4e0e9fed7f3dc018b866c79e8b93b1
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Fri Aug 15 12:52:13 2014 +0200

remove inlined functions from cpp file

also correct the header, since advector.h is now
automatically included from adouble.h

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit c83072a1117a8f8af3a662b840cf24c3f23bd471
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Fri Aug 15 12:50:17 2014 +0200

Add the interface for parameter dependent functions

This introduces a new class pdouble, which represent
parameters. These are supposed to work in such a way
that they are really constants, which can be changed
from one evaluation of the function to the next, but
we do not compute derivatives with respect to these
parameters. This will speed up forward mode significantly
as it will reduce the number of real independent variables.

We also move the declarations of overloaded functions
to a separate file because these friend declarations
were repeated between badouble and adub classes, and now
new such functions with pdouble parameters are added.
In order to keep the declarations in sync we include
the extra internal headers inside each class declaration.

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 833e176ba3fd373e828223b94157b1dca34f4d40
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Fri Aug 15 12:37:49 2014 +0200

ignore correct generated file after move

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit ba0537f87ecb8634e43d918b8284997d5d5af07e
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Fri Aug 15 13:45:55 2014 +0200

Move some internal header files to a subdirectory

these headers should never be included by a user
directly. They are always included from other
user interface headers. So we move them to
the 'internal' subdirectory to indicate this.

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 688b6c45faa0b7890e8b1d9d709a82b98a47f94f
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Fri Aug 15 12:25:20 2014 +0200

The ABI seems to have been broken, change library version

The old library libadolc.so.1.1.1 seems to have conflicts
with the new library version libadolc.so.1.2.0 So increase
the major version. After this the new library will be
libadolc.so.2.1.0

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

Location:
trunk/ADOL-C/include/adolc
Files:
5 added
21 edited
4 moved

Legend:

Unmodified
Added
Removed
  • trunk/ADOL-C/include/adolc/Makefile.am

    r429 r537  
    1212
    1313pkginclude_HEADERS   = adolc.h adalloc.h adouble.h adutils.h adutilsc.h \
    14                        common.h convolut.h dvlparms.h fortutils.h\
    15                        interfaces.h taping.h usrparms.h \
     14                       convolut.h fortutils.h \
     15                       interfaces.h taping.h \
    1616                       externfcts.h checkpointing.h fixpoint.h\
    1717                       adolc_sparse.h adolc_openmp.h \
    18                        revolve.h advector.h adolc_settings.h \
     18                       revolve.h advector.h \
    1919                       adtl.h adoublecuda.h
    2020
    21 SUBDIRS = drivers tapedoc
    22 
    23 EXTRA_DIST = adolc_settings.h.in
     21SUBDIRS = internal drivers tapedoc
    2422
    2523if SPARSE
  • trunk/ADOL-C/include/adolc/adalloc.h

    r364 r537  
    1616#define ADOLC_ADALLOC_H 1
    1717
    18 #include <adolc/common.h>
     18#include <adolc/internal/common.h>
    1919
    2020/****************************************************************************/
  • trunk/ADOL-C/include/adolc/adolc.h

    r354 r537  
    1919#define ADOLC_ADOLC_H 1
    2020
    21 #include <adolc/common.h>
     21#include <adolc/internal/common.h>
    2222
    2323/****************************************************************************/
  • trunk/ADOL-C/include/adolc/adolc_openmp.h

    r354 r537  
    2323#else
    2424
    25 #include <adolc/common.h>
     25#include <adolc/internal/common.h>
    2626
    2727extern void beginParallel();
  • trunk/ADOL-C/include/adolc/adouble.h

    r523 r537  
    3939using std::logic_error;
    4040
    41 #include <adolc/common.h>
     41#include <adolc/internal/common.h>
    4242
    4343/* NOTICE: There are automatic includes at the end of this file! */
     
    5050class adub;
    5151class badouble;
     52class pdouble;
    5253
    5354/*--------------------------------------------------------------------------*/
     
    7071*/
    7172class ADOLC_DLL_EXPORT badouble {
     73    friend ADOLC_DLL_EXPORT class pdouble;
    7274protected:
    7375    locint location;
     
    124126
    125127    /*--------------------------------------------------------------------------*/
     128    badouble& operator = (const pdouble&);
     129    badouble& operator += (const pdouble&);
     130    badouble& operator -= (const pdouble&);
     131    badouble& operator *= (const pdouble&);
     132    inline badouble& operator /= (const pdouble&);
     133    /*--------------------------------------------------------------------------*/
    126134    /* Comparison (friends) */
    127 #if defined(ADOLC_ADVANCED_BRANCHING)
    128     friend ADOLC_DLL_EXPORT adub operator != ( const badouble&, const badouble& );
    129     friend ADOLC_DLL_EXPORT adub operator == ( const badouble&, const badouble& );
    130     friend ADOLC_DLL_EXPORT adub operator <= ( const badouble&, const badouble& );
    131     friend ADOLC_DLL_EXPORT adub operator >= ( const badouble&, const badouble& );
    132     friend ADOLC_DLL_EXPORT adub operator >  ( const badouble&, const badouble& );
    133     friend ADOLC_DLL_EXPORT adub operator <  ( const badouble&, const badouble& );
    134 #else
     135#if !defined(ADOLC_ADVANCED_BRANCHING)
    135136    inline friend int operator != ( const badouble&, const badouble& );
    136137    inline friend int operator == ( const badouble&, const badouble& );
     
    155156
    156157    /*--------------------------------------------------------------------------*/
    157     /* sign operators (friends) */
    158     friend ADOLC_DLL_EXPORT adub operator + ( const badouble& x );
    159     friend ADOLC_DLL_EXPORT adub operator - ( const badouble& x );
    160 
    161     /*--------------------------------------------------------------------------*/
    162     /* binary operators (friends) */
    163     friend ADOLC_DLL_EXPORT adub operator + ( const badouble&, const badouble& );
    164     friend ADOLC_DLL_EXPORT adub operator + ( double, const badouble& );
    165     friend ADOLC_DLL_EXPORT adub operator + ( const badouble&, double );
    166     friend ADOLC_DLL_EXPORT adub operator - ( const badouble&, const badouble& );
    167     inline friend adub operator - ( const badouble&, double );
    168     friend ADOLC_DLL_EXPORT adub operator - ( double, const badouble& );
    169     friend ADOLC_DLL_EXPORT adub operator * ( const badouble&, const badouble& );
    170     friend ADOLC_DLL_EXPORT adub operator * ( double, const badouble& );
    171     inline friend adub operator * ( const badouble&, double );
    172     inline friend adub operator / ( const badouble&, double );
    173     friend ADOLC_DLL_EXPORT adub operator / ( const badouble&, const badouble& );
    174     friend ADOLC_DLL_EXPORT adub operator / ( double, const badouble& );
    175 
    176     /*--------------------------------------------------------------------------*/
    177     /* unary operators (friends) */
    178     friend ADOLC_DLL_EXPORT adub exp  ( const badouble& );
    179     friend ADOLC_DLL_EXPORT adub log  ( const badouble& );
    180     friend ADOLC_DLL_EXPORT adub sqrt ( const badouble& );
    181     friend ADOLC_DLL_EXPORT adub sin  ( const badouble& );
    182     friend ADOLC_DLL_EXPORT adub cos  ( const badouble& );
    183     friend ADOLC_DLL_EXPORT adub tan  ( const badouble& );
    184     friend ADOLC_DLL_EXPORT adub asin ( const badouble& );
    185     friend ADOLC_DLL_EXPORT adub acos ( const badouble& );
    186     friend ADOLC_DLL_EXPORT adub atan ( const badouble& );
     158    /* Functions friends with both badouble and adub */
     159#define _IN_CLASS_ 1
     160#define _IN_BADOUBLE_ 1
     161#include <adolc/internal/adubfunc.h>
     162#undef _IN_BADOUBLE_
     163#undef _IN_CLASS_
    187164
    188165    /*--------------------------------------------------------------------------*/
    189166    /* special operators (friends) */
    190167    friend ADOLC_DLL_EXPORT adouble atan2 ( const badouble&, const badouble& );
    191     /* no internal use of condassign: */
    192     friend ADOLC_DLL_EXPORT adub    pow   ( const badouble&, double );
    193168    /* uses condassign internally */
    194169    friend ADOLC_DLL_EXPORT adouble pow   ( const badouble&, const badouble& );
    195170    friend ADOLC_DLL_EXPORT adouble pow   ( double, const badouble& );
    196     friend ADOLC_DLL_EXPORT adub    log10 ( const badouble& );
    197171    /* User defined version of logarithm to test extend_quad macro */
    198172    friend ADOLC_DLL_EXPORT adouble myquad( const badouble& );
    199 
    200     /*--------------------------------------------------------------------------*/
    201     /* Additional ANSI C standard Math functions Added by DWJ on 8/6/90 */
    202     friend ADOLC_DLL_EXPORT adub sinh  ( const badouble& );
    203     friend ADOLC_DLL_EXPORT adub cosh  ( const badouble& );
    204     friend ADOLC_DLL_EXPORT adub tanh  ( const badouble& );
    205 #if defined(ATRIG_ERF)
    206     friend ADOLC_DLL_EXPORT adub asinh ( const badouble& );
    207     friend ADOLC_DLL_EXPORT adub acosh ( const badouble& );
    208     friend ADOLC_DLL_EXPORT adub atanh ( const badouble& );
    209 #endif
    210 
    211     friend ADOLC_DLL_EXPORT adub fabs  ( const badouble& );
    212     friend ADOLC_DLL_EXPORT adub ceil  ( const badouble& );
    213     friend ADOLC_DLL_EXPORT adub floor ( const badouble& );
    214 
    215     friend ADOLC_DLL_EXPORT adub fmax ( const badouble&, const badouble& );
    216     friend ADOLC_DLL_EXPORT adub fmax ( double, const badouble& );
    217     friend ADOLC_DLL_EXPORT adub fmax ( const badouble&, double );
    218     friend ADOLC_DLL_EXPORT adub fmin ( const badouble&, const badouble& );
    219     friend ADOLC_DLL_EXPORT adub fmin ( double, const badouble& );
    220     friend ADOLC_DLL_EXPORT adub fmin ( const badouble&, double );
    221 
    222     friend ADOLC_DLL_EXPORT adub ldexp ( const badouble&, int );
    223     friend ADOLC_DLL_EXPORT adub frexp ( const badouble&, int* );
    224     friend ADOLC_DLL_EXPORT adub erf   ( const badouble& );
    225173
    226174    /*--------------------------------------------------------------------------*/
     
    230178    friend ADOLC_DLL_EXPORT void condassign( adouble &res, const badouble &cond,
    231179            const badouble &arg );
     180
     181#define _IN_CLASS_ 1
     182#define _IN_BADOUBLE_ 1
     183#include <adolc/internal/paramfunc.h>
     184#undef _IN_BADOUBLE_
     185#undef _IN_CLASS_
     186
    232187};
    233188
     
    249204    friend ADOLC_DLL_EXPORT class advector;
    250205    friend ADOLC_DLL_EXPORT class adubref;
     206    friend ADOLC_DLL_EXPORT class pdouble;
    251207    friend ADOLC_DLL_EXPORT adub* adubp_from_adub(const adub&);
    252208    adub( adub const &) {
     
    277233
    278234    /*--------------------------------------------------------------------------*/
    279     /* Comparison (friends) */
    280 #if defined(ADOLC_ADVANCED_BRANCHING)
    281     friend ADOLC_DLL_EXPORT adub operator != ( const badouble&, const badouble& );
    282     friend ADOLC_DLL_EXPORT adub operator == ( const badouble&, const badouble& );
    283     friend ADOLC_DLL_EXPORT adub operator <= ( const badouble&, const badouble& );
    284     friend ADOLC_DLL_EXPORT adub operator >= ( const badouble&, const badouble& );
    285     friend ADOLC_DLL_EXPORT adub operator < ( const badouble&, const badouble& );
    286     friend ADOLC_DLL_EXPORT adub operator > ( const badouble&, const badouble& );
    287 #endif
    288     /*--------------------------------------------------------------------------*/
    289     /* sign operators (friends) */
    290     friend ADOLC_DLL_EXPORT adub operator + ( const badouble& x );
    291     friend ADOLC_DLL_EXPORT adub operator - ( const badouble& x );
    292 
    293     /*--------------------------------------------------------------------------*/
    294     /* binary operators (friends) */
    295     friend ADOLC_DLL_EXPORT adub operator + ( const badouble&, const badouble& );
    296     friend ADOLC_DLL_EXPORT adub operator + ( double, const badouble& );
    297     friend ADOLC_DLL_EXPORT adub operator + ( const badouble&, double );
    298     friend ADOLC_DLL_EXPORT adub operator - ( const badouble&, const badouble& );
    299     inline friend adub operator - ( const badouble&, double );
    300     friend ADOLC_DLL_EXPORT adub operator - ( double, const badouble& );
    301     friend ADOLC_DLL_EXPORT adub operator * ( const badouble&, const badouble& );
    302     friend ADOLC_DLL_EXPORT adub operator * ( double, const badouble& );
    303     inline friend adub operator * ( const badouble&, double );
    304     inline friend adub operator / ( const badouble&, double );
    305     friend ADOLC_DLL_EXPORT adub operator / ( const badouble&, const badouble& );
    306     friend ADOLC_DLL_EXPORT adub operator / ( double, const badouble& );
    307 
    308     /*--------------------------------------------------------------------------*/
    309     /* unary operators (friends) */
    310     friend ADOLC_DLL_EXPORT adub exp  ( const badouble& );
    311     friend ADOLC_DLL_EXPORT adub log  ( const badouble& );
    312     friend ADOLC_DLL_EXPORT adub sqrt ( const badouble& );
    313     friend ADOLC_DLL_EXPORT adub sin  ( const badouble& );
    314     friend ADOLC_DLL_EXPORT adub cos  ( const badouble& );
    315     friend ADOLC_DLL_EXPORT adub tan  ( const badouble& );
    316     friend ADOLC_DLL_EXPORT adub asin ( const badouble& );
    317     friend ADOLC_DLL_EXPORT adub acos ( const badouble& );
    318     friend ADOLC_DLL_EXPORT adub atan ( const badouble& );
    319 
    320     /*--------------------------------------------------------------------------*/
    321     /* special operators (friends) */
    322     /* no internal use of condassign: */
    323     friend ADOLC_DLL_EXPORT adub    pow   ( const badouble&, double );
    324     friend ADOLC_DLL_EXPORT adub    log10 ( const badouble& );
    325 
    326     /*--------------------------------------------------------------------------*/
    327     /* Additional ANSI C standard Math functions Added by DWJ on 8/6/90 */
    328     friend ADOLC_DLL_EXPORT adub sinh  ( const badouble& );
    329     friend ADOLC_DLL_EXPORT adub cosh  ( const badouble& );
    330     friend ADOLC_DLL_EXPORT adub tanh  ( const badouble& );
    331 #if defined(ATRIG_ERF)
    332     friend ADOLC_DLL_EXPORT adub asinh ( const badouble& );
    333     friend ADOLC_DLL_EXPORT adub acosh ( const badouble& );
    334     friend ADOLC_DLL_EXPORT adub atanh ( const badouble& );
    335 #endif
    336 
    337     friend ADOLC_DLL_EXPORT adub fabs  ( const badouble& );
    338     friend ADOLC_DLL_EXPORT adub ceil  ( const badouble& );
    339     friend ADOLC_DLL_EXPORT adub floor ( const badouble& );
    340 
    341     friend ADOLC_DLL_EXPORT adub fmax ( const badouble&, const badouble& );
    342     friend ADOLC_DLL_EXPORT adub fmax ( double, const badouble& );
    343     friend ADOLC_DLL_EXPORT adub fmax ( const badouble&, double );
    344     friend ADOLC_DLL_EXPORT adub fmin ( const badouble&, const badouble& );
    345     friend ADOLC_DLL_EXPORT adub fmin ( double, const badouble& );
    346     friend ADOLC_DLL_EXPORT adub fmin ( const badouble&, double );
    347 
    348     friend ADOLC_DLL_EXPORT adub ldexp ( const badouble&, int );
    349     friend ADOLC_DLL_EXPORT adub frexp ( const badouble&, int* );
    350     friend ADOLC_DLL_EXPORT adub erf   ( const badouble& );
     235    /* Functions friends with both badouble and adub */
     236#define _IN_CLASS_ 1
     237#define _IN_ADUB_ 1
     238#include <adolc/internal/adubfunc.h>
     239#undef _IN_ADUB_
     240#undef _IN_CLASS_
     241
     242    /*--------------------------------------------------------------------------*/
     243    /* Parameter dependent functions (friends) */
     244#define _IN_CLASS_ 1
     245#define _IN_ADUB_ 1
     246#include <adolc/internal/paramfunc.h>
     247#undef _IN_ADUB_
     248#undef _IN_CLASS_
    351249
    352250    ~adub();
     
    364262class ADOLC_DLL_EXPORT adouble:public badouble {
    365263    friend ADOLC_DLL_EXPORT class advector;
     264    friend ADOLC_DLL_EXPORT class pdouble;
    366265protected:
    367266    void initInternal(void); // Init for late initialization
     
    384283    adouble& operator = ( const adouble& );
    385284    adouble& operator = ( const adub& );
     285    adouble& operator = (const pdouble&);
    386286   
    387287    inline locint loc(void) const;
    388288};
    389289
     290#include <adolc/param.h>
     291#include <adolc/advector.h>
    390292
    391293/****************************************************************************/
     
    492394
    493395
     396inline badouble& badouble::operator /= (const pdouble& p) {
     397    *this *= recipr(p);
     398    return *this;
     399}
    494400/****************************************************************************/
    495401/*                                                                THAT'S ALL*/
  • trunk/ADOL-C/include/adolc/adtl.h

    r515 r537  
    1919
    2020#include <ostream>
    21 #include <adolc/common.h>
     21#include <adolc/internal/common.h>
    2222#include <list>
    2323#include <stdexcept>
  • trunk/ADOL-C/include/adolc/advector.h

    r427 r537  
    2121#ifdef __cplusplus
    2222#include <vector>
    23 
    24 #include <adolc/adouble.h>
    2523
    2624/****************************************************************************/
     
    4745    friend ADOLC_DLL_EXPORT class adub;
    4846    friend ADOLC_DLL_EXPORT class advector;
     47    friend ADOLC_DLL_EXPORT class pdouble;
    4948protected:
    5049    locint location;
     
    8180    adubref& operator = ( const badouble& );
    8281    adubref& operator = ( const adubref& );
     82    adubref& operator = ( const pdouble& );
    8383    adubref& operator +=  ( double );
    8484    adubref& operator +=  ( const badouble& );
     85    adubref& operator +=  ( const pdouble& );
    8586    adubref& operator -=  ( double x );
    8687    adubref& operator -=  ( const badouble& );
     88    adubref& operator -=  ( const pdouble& );
    8789    adubref& operator *=  ( double x );
    8890    adubref& operator *=  ( const badouble& );
    89     adubref& operator /=  ( double x );
    90     adubref& operator /=  ( const badouble& );
     91    adubref& operator *=  ( const pdouble& );
     92    inline adubref& operator /=  ( double x );
     93    inline adubref& operator /=  ( const badouble& );
     94    inline adubref& operator /=  ( const pdouble&);
     95
    9196    adubref& operator <<= ( double );
    9297    void declareIndependent();
     
    124129};
    125130
     131inline adubref& adubref::operator /= (double y) {
     132    *this *=  (1.0/y);
     133    return *this;
     134}
     135
     136
     137inline adubref& adubref::operator /= (const badouble& y) {
     138    *this *=  (1.0/y);
     139    return *this;
     140}
     141
     142inline adubref& adubref::operator /= (const pdouble& p) {
     143    *this *= recipr(p);
     144    return *this;
     145}
    126146#endif /* TAPELESS */
    127147#endif /* __cplusplus */
  • trunk/ADOL-C/include/adolc/checkpointing.h

    r354 r537  
    1616#define ADOLC_CHECKPOINTING_H 1
    1717
    18 #include <adolc/common.h>
     18#include <adolc/internal/common.h>
    1919#include <adolc/adouble.h>
    2020
  • trunk/ADOL-C/include/adolc/convolut.h

    r354 r537  
    1717#define ADOLC_CONVOLUT_H 1
    1818
    19 #include <adolc/common.h>
     19#include <adolc/internal/common.h>
    2020
    2121BEGIN_C_DECLS
  • trunk/ADOL-C/include/adolc/drivers/drivers.h

    r354 r537  
    1818#define ADOLC_DRIVERS_DRIVERS_H 1
    1919
    20 #include <adolc/common.h>
     20#include <adolc/internal/common.h>
    2121
    2222BEGIN_C_DECLS
  • trunk/ADOL-C/include/adolc/drivers/odedrivers.h

    r354 r537  
    1818#define ADOLC_DRIVERS_ODEDRIVERS_H 1
    1919
    20 #include <adolc/common.h>
     20#include <adolc/internal/common.h>
    2121#include <adolc/interfaces.h>
    2222
  • trunk/ADOL-C/include/adolc/drivers/taylor.h

    r450 r537  
    1616#define ADOLC_DRIVERS_TAYLOR_H 1
    1717
    18 #include <adolc/common.h>
     18#include <adolc/internal/common.h>
    1919
    2020BEGIN_C_DECLS
  • trunk/ADOL-C/include/adolc/externfcts.h

    r439 r537  
    1717#define ADOLC_EXTERNFCTS_H 1
    1818
    19 #include <adolc/common.h>
     19#include <adolc/internal/common.h>
    2020#include <adolc/adouble.h>
    2121
  • trunk/ADOL-C/include/adolc/fixpoint.h

    r354 r537  
    1717#define ADOLC_FIXPOINT_H 1
    1818
    19 #include <adolc/common.h>
     19#include <adolc/internal/common.h>
    2020
    2121BEGIN_C_DECLS
  • trunk/ADOL-C/include/adolc/fortutils.h

    r354 r537  
    1717#define ADOLC_FORTUTILS_H 1
    1818
    19 #include <adolc/common.h>
     19#include <adolc/internal/common.h>
    2020
    2121/****************************************************************************/
  • trunk/ADOL-C/include/adolc/interfaces.h

    r469 r537  
    4747#define ADOLC_INTERFACES_H 1
    4848
    49 #include <adolc/common.h>
     49#include <adolc/internal/common.h>
    5050
    5151#if defined(SPARSE)
  • trunk/ADOL-C/include/adolc/internal/common.h

    r536 r537  
    8181/*--------------------------------------------------------------------------*/
    8282/* developer and user parameters */
    83 #include <adolc/dvlparms.h>
    84 #include <adolc/usrparms.h>
    85 #include <adolc/adolc_settings.h>
     83#include <adolc/internal/dvlparms.h>
     84#include <adolc/internal/usrparms.h>
     85#include <adolc/internal/adolc_settings.h>
    8686
    8787/*--------------------------------------------------------------------------*/
  • trunk/ADOL-C/include/adolc/internal/dvlparms.h

    r536 r537  
    4141/*--------------------------------------------------------------------------*/
    4242/* TAPE IDENTIFICATION (ADOLC & version check) */
    43 #define statSpace   40
    44 #define adolcIDSize  5
    45 /* NOTE: adolcIDSize + statSize <= statSpace required! */
     43#define statSpace   42
     44/* NOTE: ADOLC_ID and stats must fit in statSpace locints required!         */
    4645
    4746/*--------------------------------------------------------------------------*/
  • trunk/ADOL-C/include/adolc/revolve.h

    r354 r537  
    1616#define ADOLC_REVOLVE_H 1
    1717
    18 #include <adolc/common.h>
     18#include <adolc/internal/common.h>
    1919
    2020BEGIN_C_DECLS
  • trunk/ADOL-C/include/adolc/sparse/sparse_fo_rev.h

    r354 r537  
    1616#define ADOLC_SPARSE_SPARSE_H 1
    1717
    18 #include <adolc/common.h>
     18#include <adolc/internal/common.h>
    1919
    2020#if defined(__cplusplus)
  • trunk/ADOL-C/include/adolc/sparse/sparsedrivers.h

    r354 r537  
    1515#define ADOLC_SPARSE_SPARSE_H 1
    1616
    17 #include <adolc/common.h>
     17#include <adolc/internal/common.h>
    1818
    1919
  • trunk/ADOL-C/include/adolc/tapedoc/tapedoc.h

    r354 r537  
    1717#define ADOLC_TAPEDOC_TAPEDOC_H 1
    1818
    19 #include <adolc/common.h>
     19#include <adolc/internal/common.h>
    2020
    2121BEGIN_C_DECLS
  • trunk/ADOL-C/include/adolc/taping.h

    r522 r537  
    1717#define ADOLC_TAPING_H 1
    1818
    19 #include <adolc/common.h>
     19#include <adolc/internal/common.h>
    2020
    2121BEGIN_C_DECLS
     
    3939    NO_MIN_MAX,  /* no use of min_op, deferred to abs_op for piecewise stuff */
    4040    NUM_SWITCHES,                   /* # of abs calls that can switch branch */
     41    NUM_PARAM, /* no of parameters (doubles) interchangable without retaping */
    4142    STAT_SIZE                     /* represents the size of the stats vector */
    4243};
Note: See TracChangeset for help on using the changeset viewer.