Changeset 247


Ignore:
Timestamp:
Jun 10, 2011 3:27:40 AM (8 years ago)
Author:
awalther
Message:

first version of nonlinear frontiers, missing: eq_plus_a and eq_plus_mult make install

Location:
trunk/ADOL-C/src
Files:
5 edited

Legend:

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

    r198 r247  
    6060                       int_forward_s.c int_forward_t.c \
    6161                       indopro_forward_s.c indopro_forward_t.c \
     62                       nlf_forward_s.c nlf_forward_t.c \
    6263                       nonl_ind_forward_s.c nonl_ind_forward_t.c \
    6364                       int_reverse_s.c int_reverse_t.c
  • trunk/ADOL-C/src/Makefile.in

    r202 r247  
    8888        fov_offset_forward.c revolve.c taping_p.h int_forward_s.c \
    8989        int_forward_t.c indopro_forward_s.c indopro_forward_t.c \
    90         nonl_ind_forward_s.c nonl_ind_forward_t.c int_reverse_s.c \
    91         int_reverse_t.c
     90        nlf_forward_s.c nlf_forward_t.c nonl_ind_forward_s.c \
     91        nonl_ind_forward_t.c int_reverse_s.c int_reverse_t.c
    9292@SPARSE_FALSE@am_libadolc_la_OBJECTS = adalloc.lo malloc.lo adouble.lo \
    9393@SPARSE_FALSE@  convolut.lo fortutils.lo interfaces.lo \
     
    109109@SPARSE_TRUE@   fov_offset_forward.lo revolve.lo int_forward_s.lo \
    110110@SPARSE_TRUE@   int_forward_t.lo indopro_forward_s.lo \
    111 @SPARSE_TRUE@   indopro_forward_t.lo nonl_ind_forward_s.lo \
     111@SPARSE_TRUE@   indopro_forward_t.lo nlf_forward_s.lo \
     112@SPARSE_TRUE@   nlf_forward_t.lo nonl_ind_forward_s.lo \
    112113@SPARSE_TRUE@   nonl_ind_forward_t.lo int_reverse_s.lo \
    113114@SPARSE_TRUE@   int_reverse_t.lo
     
    363364@SPARSE_TRUE@                       int_forward_s.c int_forward_t.c \
    364365@SPARSE_TRUE@                       indopro_forward_s.c indopro_forward_t.c \
     366@SPARSE_TRUE@                       nlf_forward_s.c nlf_forward_t.c \
    365367@SPARSE_TRUE@                       nonl_ind_forward_s.c nonl_ind_forward_t.c \
    366368@SPARSE_TRUE@                       int_reverse_s.c int_reverse_t.c
     
    384386          esac; \
    385387        done; \
    386         echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu ADOL-C/src/Makefile'; \
     388        echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign ADOL-C/src/Makefile'; \
    387389        $(am__cd) $(top_srcdir) && \
    388           $(AUTOMAKE) --gnu ADOL-C/src/Makefile
     390          $(AUTOMAKE) --foreign ADOL-C/src/Makefile
    389391.PRECIOUS: Makefile
    390392Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
     
    490492@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/interfacesf.Plo@am__quote@
    491493@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/malloc.Plo@am__quote@
     494@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nlf_forward_s.Plo@am__quote@
     495@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nlf_forward_t.Plo@am__quote@
    492496@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonl_ind_forward_s.Plo@am__quote@
    493497@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonl_ind_forward_t.Plo@am__quote@
  • trunk/ADOL-C/src/interfaces.h

    r176 r247  
    300300/*--------------------------------------------------------------------------*/
    301301/*                                                            INDOPRO, SAFE */
    302 /* indopro_forward_safe(tag, m, n, p, x[n], *Y[m])                          */
     302/* indopro_forward_safe(tag, m, n, p, x[n], *crs[m])                          */
    303303
    304304ADOLC_DLL_EXPORT int indopro_forward_safe
     
    308308/*--------------------------------------------------------------------------*/
    309309/*                                                           INDOPRO, TIGHT */
    310 /* indopro_forward_tight(tag, m, n,  x[n], *Y[m])                           */
     310/* indopro_forward_tight(tag, m, n,  x[n], *crs[m])                           */
    311311
    312312ADOLC_DLL_EXPORT int indopro_forward_tight
     313(short, int, int, const double*, unsigned int**);
     314
     315/****************************************************************************/
     316/*                                             NONLINEAR FRONTIER UTILITIES */
     317/*--------------------------------------------------------------------------*/
     318/*                                                                NLF, SAFE */
     319/* nlf_forward_safe(tag, m, n, p, x[n], *crs[m])                            */
     320
     321ADOLC_DLL_EXPORT int nlf_forward_safe
     322(short, int, int, const double*, unsigned int**);
     323
     324
     325/*--------------------------------------------------------------------------*/
     326/*                                                           INDOPRO, TIGHT */
     327/* nlf_forward_tight(tag, m, n,  x[n], *crs[m])                             */
     328
     329ADOLC_DLL_EXPORT int nlf_forward_tight
    313330(short, int, int, const double*, unsigned int**);
    314331
  • trunk/ADOL-C/src/uni5_for.c

    r221 r247  
    140140#endif
    141141#endif
     142
     143#if defined(_NLF_)
     144#if defined(_TIGHT_)
     145#define GENERATED_FILENAME "nlf_forward_t"
     146#endif
     147#if defined(_NTIGHT_)
     148#define GENERATED_FILENAME "nlf_forward_s"
     149#endif
     150typedef struct IndexElement {
     151    locint  entry;
     152    struct IndexElement* next;
     153}
     154IndexElement;
     155#endif
     156
    142157#if defined(_NONLIND_)
    143158
     
    579594#endif
    580595#else
     596#if defined(_NLF_)
     597#if defined(_TIGHT_)
     598/****************************************************************************/
     599/* First Order Vector version of the forward mode for bit patterns, tight   */
     600/****************************************************************************/
     601int nlf_forward_tight(
     602    short             tnum,        /* tape id                              */
     603    int               depcheck,    /* consistency chk on # of dependents   */
     604    int               indcheck,    /* consistency chk on # of independents */
     605    const double     *basepoint,  /* independent variable values   (in)   */
     606    unsigned int    **crs)        /* returned row index storage (out)     */
     607
     608#endif
     609#if defined (_NTIGHT_)
     610/****************************************************************************/
     611/* First Order Vector version of the forward mode, bit pattern, safe        */
     612/****************************************************************************/
     613int nlf_forward_safe(
     614    short             tnum,        /* tape id                              */
     615    int               depcheck,    /* consistency chk on # of dependents   */
     616    int               indcheck,    /* consistency chk on # of independents */
     617    const double     *basepoint,   /* independent variable values   (in)   */
     618    unsigned int    **crs)         /* returned row index storage (out)     */
     619
     620/* indopro_forward_safe( tag, m, n, x[n], *crs[m]),
     621
     622  */
     623#endif
     624#else
    581625#if defined(_NONLIND_)
    582626#if defined(_TIGHT_)
     
    590634    const double     *basepoint,  /* independent variable values   (in)   */
    591635    unsigned int     **crs)        /* returned row index storage (out)     */
    592 
    593 /* indopro_forward_tight( tag, m, n, x[n], *crs[m]),
    594 
    595   */
    596636
    597637#endif
     
    698738#endif
    699739#endif
     740#endif
    700741{
    701742    /****************************************************************************/
     
    738779    int l=0;
    739780    int max_ind_dom;
     781#if defined (_NLF_)
     782    IndexElement** csod;
     783    IndexElement*  temp;
     784    IndexElement*  temp1;
     785    int index;
     786    int index1;
     787    int num;
     788    locint entry;
     789    int ii;
     790    int jj;
     791#endif
    740792#if defined(_NONLIND_)
    741793    /* nonlinear interaction domains */
     
    784836    /* index domains */
    785837    locint** ind_dom;
    786 
     838#if defined(_INDO_)
     839    locint** nlf;
     840#endif
    787841#else
    788842    double *dp_T0;
     
    9671021#if defined(_INDO_)
    9681022    ind_dom = (locint **)  malloc(sizeof(locint*) * ADOLC_CURRENT_TAPE_INFOS.stats[NUM_MAX_LIVES]);
    969 
     1023#if defined(_NLF_)
     1024    nlf = (locint **)  malloc(sizeof(locint*) * ADOLC_CURRENT_TAPE_INFOS.stats[NUM_MAX_LIVES]);
     1025    csod = (struct IndexElement**) malloc(sizeof(struct IndexElement*) * indcheck);
     1026    for(i=0;i<indcheck;i++)
     1027      {
     1028        csod[i] = (struct IndexElement*) malloc(sizeof(struct IndexElement));
     1029        csod[i]->entry = 0;
     1030        csod[i]->next = NULL;
     1031      } 
     1032
     1033#endif
    9701034    for(i=0;i<ADOLC_CURRENT_TAPE_INFOS.stats[NUM_MAX_LIVES];i++)
    9711035    {
     
    9731037        ind_dom[i][0] = 0;
    9741038        ind_dom[i][1] = NUMNNZ;
     1039#if defined(_NLF_)
     1040        nlf[i] = (locint *)  malloc(sizeof(locint) * (NUMNNZ+2));
     1041        nlf[i][0] = 0;
     1042        nlf[i][1] = NUMNNZ;
     1043#endif
    9751044    }
    9761045
     
    12111280#if defined(_INDO_)
    12121281                copy_index_domain(res, arg, ind_dom);
     1282#if defined(_NLF_)
     1283                copy_index_domain(res, arg, nlf);
     1284#endif
    12131285#else
    12141286#if !defined(_ZOS_) /* BREAK_ZOS */
     
    12361308#if defined(_INDO_)
    12371309                ind_dom[res][0]=0;
     1310#if defined(_NLF_)
     1311                nlf[res][0]=0;
     1312#endif
    12381313#else
    12391314#if !defined(_ZOS_) /* BREAK_ZOS */
     
    12591334#if defined(_INDO_)
    12601335                ind_dom[res][0]=0;
     1336#if defined(_NLF_)
     1337                nlf[res][0]=0;
     1338#endif
    12611339#else
    12621340#if !defined(_ZOS_) /* BREAK_ZOS */
     
    12821360#if defined(_INDO_)
    12831361                ind_dom[res][0]=0;
     1362#if defined(_NLF_)
     1363                nlf[res][0]=0;
     1364#endif
    12841365#else
    12851366#if !defined(_ZOS_) /* BREAK_ZOS */
     
    13501431                }
    13511432#endif
     1433#if defined(_NLF_)
     1434                               
     1435                for(l=2;l<=nlf[res][0]+1;l++)
     1436                  {
     1437                    int index = nlf[res][l];
     1438                    for(ii=2;ii<=ind_dom[index][0]+1;ii++)
     1439                      {
     1440                        index1 = ind_dom[index][ii];
     1441                        for(jj=2;jj<=ind_dom[index][0]+1;jj++)
     1442                          {
     1443                            temp1 = csod[index1];
     1444                            temp = csod[index1]->next;
     1445                            num = csod[index1]->entry;
     1446                            i=0;
     1447                            do
     1448                              {
     1449                                if (temp==NULL)
     1450                                  {
     1451                                    temp = (struct IndexElement*) malloc(sizeof(struct IndexElement));
     1452                                    temp1->next = temp;
     1453                                    temp->entry = ind_dom[index][jj];
     1454                                    temp->next = NULL;
     1455                                    csod[index1]->entry++;
     1456                                    i = 1;
     1457                                  }
     1458                                else
     1459                                  {
     1460                                    if (temp->entry < ind_dom[index][jj])
     1461                                      {
     1462                                        temp1 = temp;
     1463                                        temp = temp->next;
     1464                                      }
     1465                                    else
     1466                                      {
     1467                                        if (temp->entry == ind_dom[index][jj])
     1468                                          i = 1;
     1469                                        else
     1470                                          {
     1471                                            temp = (struct IndexElement*) malloc(sizeof(struct IndexElement));
     1472                                            temp->entry = ind_dom[index][jj];
     1473                                            csod[index1]->entry++;
     1474                                            temp->next = temp1->next;
     1475                                            temp1->next = temp;
     1476                                            i=1;
     1477                                          }
     1478                                      }
     1479                                  }
     1480                              }
     1481                            while (i == 0);
     1482                          }
     1483                      }
     1484                  }
     1485#endif
    13521486#else
    13531487#if !defined(_ZOS_) /* BREAK_ZOS */
     
    14001534#if defined(_INDO_)
    14011535                merge_2_index_domains(res, arg, ind_dom);
     1536#if defined(_NLF_)
     1537                nlf[res][0] = 1;
     1538                nlf[res][2] = res;
     1539#endif
    14021540#else
    14031541#if !defined(_ZOS_) /* BREAK_ZOS */
     
    14431581#if defined(_INDO_)
    14441582                merge_2_index_domains(res, arg, ind_dom);
     1583#if defined(_NLF_)
     1584                merge_2_index_domains(res, arg, nlf);
     1585#endif
    14451586#else
    14461587#if !defined(_ZOS_) /* BREAK_ZOS */
     
    14951636#if defined(_INDO_)
    14961637                merge_2_index_domains(res, arg, ind_dom);
     1638#if defined(_NLF_)
     1639                nlf[res][0] = 1;
     1640                nlf[res][2] = res;
     1641#endif
    14971642#if defined(_NONLIND_)
    14981643                extend_nonlinearity_domain_binary(res, arg, ind_dom, nonl_dom);
     
    15731718#if defined(_INDO_)
    15741719                combine_2_index_domains(res, arg1, arg2, ind_dom);
     1720#if defined(_NLF_)
     1721                combine_2_index_domains(res, arg1, arg2, nlf);
     1722#endif
    15751723#else
    15761724#if !defined(_ZOS_) /* BREAK_ZOS */
     
    16051753#if defined(_INDO_)
    16061754                copy_index_domain(res, arg, ind_dom);
     1755#if defined(_NLF_)
     1756                copy_index_domain(res, arg, nlf);
     1757#endif
    16071758#else
    16081759#if !defined(_ZOS_) /* BREAK_ZOS */
     
    16331784#if defined(_INDO_)
    16341785                combine_2_index_domains(res, arg1, arg2, ind_dom);
     1786#if defined(_NLF_)
     1787                combine_2_index_domains(res, arg1, arg2, nlf);
     1788#endif
    16351789#else
    16361790#if !defined(_ZOS_) /* BREAK_ZOS */
     
    16651819#if defined(_INDO_)
    16661820                copy_index_domain(res, arg, ind_dom);
     1821#if defined(_NLF_)
     1822#endif
     1823                copy_index_domain(res, arg, nlf);
    16671824#else
    16681825#if !defined(_ZOS_) /* BREAK_ZOS */
     
    16911848#if defined(_INDO_)
    16921849                combine_2_index_domains(res, arg1, arg2, ind_dom);
     1850#if defined(_NLF_)
     1851                nlf[res][0] = 1;
     1852                nlf[res][2] = res;
     1853#endif
    16931854#if defined(_NONLIND_)
    16941855                extend_nonlinearity_domain_binary(arg1, arg2, ind_dom, nonl_dom);
     
    17431904#if defined(_INDO_)
    17441905                merge_3_index_domains(res, arg1, arg2, ind_dom);
     1906#if defined(_NLF_)
     1907                /* copy_index_domain(res, arg1, nlf); */
     1908#endif
    17451909#if defined(_NONLIND_)
    17461910                extend_nonlinearity_domain_binary(arg1, arg2, ind_dom, nonl_dom);
     
    17941958#if defined(_INDO_)
    17951959                merge_3_index_domains(res, arg1, arg2, ind_dom);
     1960#if defined(_NLF_)
     1961                /* copy_index_domain(res, arg1, nlf); */
     1962#endif
    17961963#if defined(_NONLIND_)
    17971964                extend_nonlinearity_domain_binary(arg1, arg2, ind_dom, nonl_dom);
     
    18512018#if defined(_INDO_)
    18522019                copy_index_domain(res, arg, ind_dom);
     2020#if defined(_NLF_)
     2021                copy_index_domain(res, arg, nlf);
     2022#endif
    18532023#else
    18542024#if !defined(_ZOS_) /* BREAK_ZOS */
     
    18872057#if defined(_INDO_)
    18882058                combine_2_index_domains(res, arg1, arg2, ind_dom);
     2059#if defined(_NLF_)
     2060                nlf[res][0] = 1;
     2061                nlf[res][2] = res;
     2062#endif
    18892063#if defined(_NONLIND_)
    18902064                extend_nonlinearity_domain_binary(arg1, arg2, ind_dom, nonl_dom);
     
    19482122#if defined(_INDO_)
    19492123                copy_index_domain(res, arg, ind_dom);
     2124#if defined(_NLF_)
     2125                nlf[res][0] = 1;
     2126                nlf[res][2] = res;
     2127#endif
    19502128#if defined(_NONLIND_)
    19512129                extend_nonlinearity_domain_unary(arg, ind_dom, nonl_dom);
     
    20002178#if defined(_INDO_)
    20012179                copy_index_domain(res, arg, ind_dom);
     2180#if defined(_NLF_)
     2181                copy_index_domain(res, arg, nlf);
     2182#endif
    20022183#else
    20032184#if !defined(_ZOS_) /* BREAK_ZOS */
     
    20242205#if defined(_INDO_)
    20252206                copy_index_domain(res, arg, ind_dom);
     2207#if defined(_NLF_)
     2208                copy_index_domain(res, arg, nlf);
     2209#endif
    20262210#else
    20272211#if !defined(_ZOS_) /* BREAK_ZOS */
     
    20592243#if defined(_INDO_)
    20602244                copy_index_domain(res, arg, ind_dom);
     2245#if defined(_NLF_)
     2246                nlf[res][0] = 1;
     2247                nlf[res][2] = res;
     2248#endif
    20612249#if defined(_NONLIND_)
    20622250                extend_nonlinearity_domain_unary(arg, ind_dom, nonl_dom);
     
    21152303#if defined(_INDO_)
    21162304                copy_index_domain(res, arg1, ind_dom);
     2305#if defined(_NLF_)
     2306                nlf[res][0] = 1;
     2307                nlf[res][2] = res;
     2308#endif
    21172309#if defined(_NONLIND_)
    21182310                extend_nonlinearity_domain_unary(arg1, ind_dom, nonl_dom);
     
    21812373#if defined(_INDO_)
    21822374                copy_index_domain(res, arg1, ind_dom);
     2375#if defined(_NLF_)
     2376                nlf[res][0] = 1;
     2377                nlf[res][2] = res;
     2378#endif
    21832379#if defined(_NONLIND_)
    21842380                extend_nonlinearity_domain_unary(arg1, ind_dom, nonl_dom);
     
    22442440#if defined(_INDO_)
    22452441                copy_index_domain(res, arg1, ind_dom);
     2442#if defined(_NLF_)
     2443                nlf[res][0] = 1;
     2444                nlf[res][2] = res;
     2445#endif
    22462446#if defined(_NONLIND_)
    22472447                extend_nonlinearity_domain_unary(arg1, ind_dom, nonl_dom);
     
    22992499#if defined(_INDO_)
    23002500                copy_index_domain(res, arg1, ind_dom);
     2501#if defined(_NLF_)
     2502                nlf[res][0] = 1;
     2503                nlf[res][2] = res;
     2504#endif
    23012505#if defined(_NONLIND_)
    23022506                extend_nonlinearity_domain_unary(arg1, ind_dom, nonl_dom);
     
    23922596#if defined(_INDO_)
    23932597                copy_index_domain(res, arg1, ind_dom);
     2598#if defined(_NLF_)
     2599                nlf[res][0] = 1;
     2600                nlf[res][2] = res;
     2601#endif
    23942602#if defined(_NONLIND_)
    23952603                extend_nonlinearity_domain_unary(arg1, ind_dom, nonl_dom);
     
    24872695#if defined(_INDO_)
    24882696                copy_index_domain(res, arg1, ind_dom);
     2697#if defined(_NLF_)
     2698                nlf[res][0] = 1;
     2699                nlf[res][2] = res;
     2700#endif
    24892701#if defined(_NONLIND_)
    24902702                extend_nonlinearity_domain_unary(arg1, ind_dom, nonl_dom);
     
    25422754#if defined(_INDO_)
    25432755                copy_index_domain(res, arg1, ind_dom);
     2756#if defined(_NLF_)
     2757                nlf[res][0] = 1;
     2758                nlf[res][2] = res;
     2759#endif
    25442760#if defined(_NONLIND_)
    25452761                extend_nonlinearity_domain_unary(arg1, ind_dom, nonl_dom);
     
    26192835#if defined(_INDO_)
    26202836                copy_index_domain(res, arg1, ind_dom);
     2837#if defined(_NLF_)
     2838                nlf[res][0] = 1;
     2839                nlf[res][2] = res;
     2840#endif
    26212841#if defined(_NONLIND_)
    26222842                extend_nonlinearity_domain_unary(arg1, ind_dom, nonl_dom);
     
    27172937#if defined(_INDO_)
    27182938                copy_index_domain(res, arg1, ind_dom);
     2939#if defined(_NLF_)
     2940                nlf[res][0] = 1;
     2941                nlf[res][2] = res;
     2942#endif
    27192943#else
    27202944#if !defined(_ZOS_) /* BREAK_ZOS */
     
    27642988#if defined(_INDO_)
    27652989                copy_index_domain(res, arg, ind_dom);
     2990#if defined(_NLF_)
     2991                nlf[res][0] = 1;
     2992                nlf[res][2] = res;
     2993#endif
    27662994#if defined(_NONLIND_)
    27672995                extend_nonlinearity_domain_unary(arg, ind_dom, nonl_dom);
     
    28423070#if defined(_INDO_)
    28433071                copy_index_domain(res, arg, ind_dom);
     3072#if defined(_NLF_)
     3073                nlf[res][0] = 1;
     3074                nlf[res][2] = res;
     3075#endif
    28443076#if defined(_NONLIND_)
    28453077                extend_nonlinearity_domain_unary(arg, ind_dom, nonl_dom);
     
    29773209#if defined(_INDO_)
    29783210                copy_index_domain(res, arg, ind_dom);
     3211#if defined(_NLF_)
     3212                nlf[res][0] = 1;
     3213                nlf[res][2] = res;
     3214#endif
    29793215#if defined(_NONLIND_)
    29803216                extend_nonlinearity_domain_unary(arg, ind_dom, nonl_dom);
     
    31393375                    combine_2_index_domains(res, arg1, arg2, ind_dom);
    31403376#endif
     3377#if defined(_NLF_)
     3378#ifdef _TIGHT_
     3379                    if (dp_T0[arg1] < dp_T0[arg2])
     3380                        copy_index_domain(res, arg1, nlf);
     3381                    else {
     3382                        if (dp_T0[arg1] > dp_T0[arg2])
     3383                            copy_index_domain(res, arg2, nlf);
     3384                        else
     3385                            combine_2_index_domains(res, arg1, arg2, nlf);
     3386                    }
     3387#else
     3388                    combine_2_index_domains(res, arg1, arg2, nlf);
     3389#endif
     3390#endif
     3391
    31413392#else
    31423393#if !defined(_ZOS_) /* BREAK_ZOS */
     
    31573408                { Targ = Tqo;
    31583409                  if (Targ == NULL) /* e.g. T0[arg1] == T0[arg2] */
    3159               { Targ1OP = Targ1;
    3160                   Targ2OP = Targ2;
    3161                   if (TARG1 > TARG2)
    3162                           Targ = Targ2OP;
     3410                    { Targ1OP = Targ1;
     3411                      Targ2OP = Targ2;
     3412                      if (TARG1 > TARG2)
     3413                        Targ = Targ2OP;
    31633414                      else
    3164                           if (TARG1 < TARG2)
    3165                               Targ = Targ1OP;
     3415                        if (TARG1 < TARG2)
     3416                          Targ = Targ1OP;
    31663417                      Targ1++;
    31673418                      Targ2++;
    31683419                      if (Targ == NULL) /* e.g. both are equal */
    3169                           Targ = Targ1OP;
    3170                   }
     3420                        Targ = Targ1OP;
     3421                    }
    31713422
    31723423                  TRES_INC = TARG_INC;
    31733424
    31743425                  if (Tqo)
    3175                   Tqo++;
     3426                    Tqo++;
    31763427                }
    31773428
     
    31843435                Tqo = NULL;
    31853436                if (dp_T0[arg1] > dp_T0[arg2])
    3186                     Tqo = Targ2;
     3437                  Tqo = Targ2;
    31873438                else
    3188                     if (dp_T0[arg1] < dp_T0[arg2])
    3189                         Tqo = Targ1;
     3439                  if (dp_T0[arg1] < dp_T0[arg2])
     3440                    Tqo = Targ1;
    31903441
    31913442                FOR_0_LE_l_LT_p
    3192                 { Targ = Tqo;
    3193                   if (Targ == NULL) /* e.g. dp_T0[arg1] ==
     3443                  { Targ = Tqo;
     3444                    if (Targ == NULL) /* e.g. dp_T0[arg1] ==
    31943445                                                                                 dp_T0[arg2] */
    3195               { Targ1OP = Targ1;
    3196                   Targ2OP = Targ2;
     3446                      { Targ1OP = Targ1;
     3447                        Targ2OP = Targ2;
    31973448                  FOR_0_LE_i_LT_k
    31983449                  { if (TARG1 > TARG2) {
     
    32563507#if defined(_INDO_)
    32573508                copy_index_domain(res, arg, ind_dom);
     3509#if defined(_NLF_)
     3510                copy_index_domain(res, arg, nlf);
     3511#endif
    32583512#else
    32593513#if !defined(_ZOS_) /* BREAK_ZOS */
     
    33303584#if defined(_INDO_)
    33313585                copy_index_domain(res, arg, ind_dom);
     3586#if defined(_NLF_)
     3587                copy_index_domain(res, arg, nlf);
     3588#endif
    33323589#else
    33333590#if !defined(_ZOS_) /* BREAK_ZOS */
     
    33573614#if defined(_INDO_)
    33583615                copy_index_domain(res, arg, ind_dom);
     3616#if defined(_NLF_)
     3617                copy_index_domain(res, arg, nlf);
     3618#endif
    33593619#else
    33603620#if !defined(_ZOS_) /* BREAK_ZOS */
     
    33903650
    33913651                    combine_2_index_domains(res, arg1, arg2, ind_dom);
    3392 #else
    3393                         copy_index_domain(res, arg1, ind_dom);
     3652#if defined(_NLF_)
     3653                    combine_2_index_domains(res, arg1, arg2, nlf);
     3654#endif
     3655#else
     3656                    copy_index_domain(res, arg1, ind_dom);
     3657#if defined(_NLF_)
     3658                    copy_index_domain(res, arg1, nlf);
     3659#endif
    33943660#endif
    33953661#ifdef _TIGHT_
     
    34023668
    34033669                        combine_2_index_domains(res, arg1, arg2, ind_dom);
     3670#if defined(_NLF_)
     3671                    combine_2_index_domains(res, arg1, arg2, nlf);
     3672#endif
    34043673                }
    34053674#else
    34063675                        copy_index_domain(res, arg2, ind_dom);
     3676#if defined(_NLF_)
     3677                    copy_index_domain(res, arg1, nlf);
     3678#endif
    34073679#endif
    34083680#else
     
    34773749#if defined(_INDO_)
    34783750                    copy_index_domain(res, arg1, ind_dom);
     3751#if defined(_NLF_)
     3752#endif
    34793753#else
    34803754#if !defined(_ZOS_) /* BREAK_ZOS */
     
    36933967
    36943968#if defined(_INDO_)
    3695 
    36963969    for(i=0;i<max_ind_dom;i++)
    36973970      {
     
    36993972      }
    37003973    free(ind_dom);
     3974#if defined(_NLF_)
     3975
     3976    for( i=0; i < indcheck; i++) {
     3977       crs[i] = (unsigned int*) malloc(sizeof(unsigned int) * (csod[i]->entry+1));
     3978       crs[i][0] = csod[i]->entry;
     3979       temp1 = csod[i];
     3980       temp  = csod[i]->next;
     3981       for(l=1; l < crs[i][0]+1; l++)
     3982         {
     3983           crs[i][l] = temp->entry;
     3984           free(temp1);
     3985           temp1 = temp;
     3986           temp = temp->next;
     3987         }
     3988    }
     3989    free(csod);
     3990
     3991    for(i=0;i<max_ind_dom;i++)
     3992      {
     3993        free(nlf[i]);
     3994      }
     3995    free(nlf);
     3996#endif
    37013997
    37023998#if defined(_NONLIND_)
  • trunk/ADOL-C/src/usrparms.h

    r175 r247  
    2222/*--------------------------------------------------------------------------*/
    2323/* Buffer sizes */
    24 #define OBUFSIZE  65536 /* 16384 or  524288  */
    25 #define LBUFSIZE  65536 /* 16384 or  524288  */
    26 #define VBUFSIZE  65536 /* 16384 or  524288  */
     24#define OBUFSIZE  10000000 /* 16384 or  524288  */
     25#define LBUFSIZE  10000000 /* 16384 or  524288  */
     26#define VBUFSIZE  10000000 /* 16384 or  524288  */
    2727
    2828/*--------------------------------------------------------------------------*/
    2929/* Buffer size for temporary Taylor store */
    30 #define TBUFSIZE  65536 /* 16384 or  524288  */
     30#define TBUFSIZE  10000000 /* 16384 or  524288  */
    3131
    3232/*--------------------------------------------------------------------------*/
Note: See TracChangeset for help on using the changeset viewer.