Changeset 477993 in git


Ignore:
Timestamp:
Oct 22, 1999, 1:14:20 PM (25 years ago)
Author:
Olaf Bachmann <obachman@…>
Branches:
(u'fieker-DuVal', '117eb8c30fc9e991c4decca4832b1d19036c4c65')(u'spielwiese', 'b52fc4b2495505785981d640dcf7eb3e456778ef')
Children:
e74240795d2ee6d4197ca283e31665a6a55d12d5
Parents:
9a50a2e8dd4eadcc31699a3afea0aaea5379a5a7
Message:
* new Makefile target: Singulart whcih enables mtrack
* Macros for allocating intvecs: NewIntvec


git-svn-id: file:///usr/local/Singular/svn/trunk@3767 2c84dea3-7e68-4137-9b89-c4e89433aadc
Location:
Singular
Files:
33 edited

Legend:

Unmodified
Added
Removed
  • Singular/Makefile.in

    r9a50a2 r477993  
    302302mostlyclean:
    303303        -rm -f Singular Singularg Singularp Singularb libparse feOpt*.inc
    304         -rm -f *.o *.og core *.op *.ob
     304        -rm -f *.o *.og core *.op *.ob *.ot Singulart
    305305
    306306clean: mostlyclean
     
    437437BPROFOBJ        = /usr/local/lib/bmon.o
    438438
    439 
    440 ##
    441 ## .op and ob files for gprof and bprof
     439DEFST           = -DNDEBUG -D@SING_UNAME@ -DMTRACK
     440LDFLAGST        = -static @LDFLAGS@
     441
     442##
     443## op and ob files for gprof and bprof, ot for mtrack
    442444##
    443445
     
    450452OBJB=$(OBJB1) $(OBJB2)
    451453
     454OBJT1 := $(CXXSOURCES:.cc=.ot)
     455OBJT2 := $(CSOURCES:.c=.ot)
     456OBJT=$(OBJT1) $(OBJT2)
    452457
    453458##
     
    465470        $(CCP)  ${CFLAGSP} ${CPPFLAGS} ${DEFSP} -c $< -o $@
    466471
    467 Singularp: scanner.cc  gmalloc.op $(OBJP) iparith.op mpsr_Tok.op claptmpl.op tesths.cc version.h
    468         $(CXXP) ${CXXFLAGSP} ${CPPFLAGS} ${DEFSP} -o Singularp \
    469         tesths.cc iparith.op mpsr_Tok.op $(OBJP) ${LDFLAGSP} ${LIBS} \
     472Singularp: scanner.cc  gmalloc.op \
     473           $(ASO_OBJS) $(OBJP) \
     474           iparith.op mpsr_Tok.op claptmpl.op tesths.cc version.h
     475        $(CXXP) ${CXXFLAGSP} ${CXXTEMPLFLAGSP} ${CPPFLAGS} ${DEFSP} -o Singularp \
     476        tesths.cc iparith.op mpsr_Tok.op claptmpl.op $(OBJP) ${LDFLAGSP} ${LIBS} \
    470477        ${LD_DYN_FLAGS} gmalloc.op
    471478
    472479iparith.op: iparith.inc iparith.cc
    473         $(CXXP)  ${CXXFLAGSP} ${CPPFLAGS} ${DEFSP} -c iparith.cc -o iparith.op
     480        $(CXXP)  ${CXXFLAGSP} ${CXXTEMPLFLAGSP} ${CPPFLAGS} ${DEFSP} -c iparith.cc -o iparith.op
    474481
    475482mpsr_Tok.op: iparith.inc mpsr_Tok.cc
    476         $(CXXP) ${CXXFLAGSP} ${CPPFLAGS} ${DEFSP} -c mpsr_Tok.cc -o mpsr_Tok.op
     483        $(CXXP) ${CXXFLAGSP} ${CXXTEMPLFLAGSP} ${CPPFLAGS} ${DEFSP} -c mpsr_Tok.cc -o mpsr_Tok.op
    477484
    478485
     
    489496Singularb: scanner.cc  gmalloc.ob $(OBJB) iparith.ob mpsr_Tok.ob claptmpl.ob tesths.cc version.h
    490497        $(CXXP) ${CXXFLAGSP} ${CPPFLAGS} ${DEFSB} -o Singularb \
    491         tesths.cc iparith.ob mpsr_Tok.ob $(OBJB) $(BPROFOBJ) \
     498        tesths.cc iparith.ob mpsr_Tok.ob claptmpl.ob $(OBJB) $(BPROFOBJ) \
    492499        ${LDFLAGSP} ${LIBS} ${LD_DYN_FLAGS} gmalloc.ob
    493500
    494501iparith.ob: iparith.inc iparith.cc
    495         $(CXXP)  ${CXXFLAGSP} ${CPPFLAGS} ${DEFSB} -c iparith.cc -o iparith.ob
     502        $(CXXP)  ${CXXFLAGSP} ${CXXTEMPLFLAGSP} ${CPPFLAGS} ${DEFSB} -c iparith.cc -o iparith.ob
    496503
    497504mpsr_Tok.ob: iparith.inc mpsr_Tok.cc
    498         $(CXXP) ${CXXFLAGSP} ${CPPFLAGS} ${DEFSB} -c mpsr_Tok.cc -o mpsr_Tok.ob
     505        $(CXXP) ${CXXFLAGSP} ${CXXTEMPLFLAGSP} ${CPPFLAGS} ${DEFSB} -c mpsr_Tok.cc -o mpsr_Tok.ob
     506
     507#
     508# for mtrack
     509#
     510claptmpl.ot: claptmpl.cc mod2.h
     511        $(CXXP)  ${CXXFLAGSB} ${CPPFLAGS} ${DEFST} -c $< -o $@
     512
     513$(OBJT1): %.ot: %.cc
     514        $(CXXP) ${CXXFLAGSB} ${CXXTEMPLFLAGSP} ${CPPFLAGS} ${DEFST} -c $< -o $@
     515
     516$(OBJT2) gmalloc.ot: %.ot: %.c
     517        $(CCP)  ${CFLAGSB} ${CPPFLAGS} ${DEFST} -c $< -o $@
     518
     519Singulart: scanner.cc  gmalloc.ot $(OBJT) iparith.ot mpsr_Tok.ot claptmpl.ot tesths.cc version.h
     520        $(CXXP) ${CXXFLAGSB} ${CPPFLAGS} ${DEFST} -o Singulart \
     521        tesths.cc iparith.ot mpsr_Tok.ot claptmpl.ot $(OBJT) ${LDFLAGST} ${LIBS} \
     522        ${LD_DYN_FLAGS} gmalloc.ot
     523
     524iparith.ot: iparith.inc iparith.cc
     525        $(CXXP)  ${CXXFLAGSB} ${CXXTEMPLFLAGSB} ${CPPFLAGS} ${DEFST} -c iparith.cc -o iparith.ot
     526
     527mpsr_Tok.ot: iparith.inc mpsr_Tok.cc
     528        $(CXXP) ${CXXFLAGSB} ${CXXTEMPLFLAGSB} ${CPPFLAGS} ${DEFST} -c mpsr_Tok.cc -o mpsr_Tok.ot
     529
    499530
    500531##
     
    511542
    512543%.dd: %.cc mod2.h
    513         echo $(@:.dd=.og) $(@:.dd=.op) $(@:.dd=.ob) " " \\ > $@
     544        echo $(@:.dd=.og) $(@:.dd=.op) $(@:.dd=.ob) $(@:.dd=.ot)" " \\ > $@
    514545        $(CXXM) -DGENTABLE ${CPPFLAGS} ${DEFSG} $< >> $@
    515546
    516547%.d: %.c mod2.h
    517         echo $(@:.d=.og) $(@:.d=.op) $(@:.d=.ob) " " \\ > $@
     548        echo $(@:.d=.og) $(@:.d=.op) $(@:.d=.ob) $(@:.d=.ot)" " \\ > $@
    518549        $(CCM) ${CPPFLAGS} ${DEFSG} $< >> $@
    519550
  • Singular/clapsing.cc

    r9a50a2 r477993  
    33*  Computer Algebra System SINGULAR     *
    44****************************************/
    5 // $Id: clapsing.cc,v 1.55 1999-10-14 14:26:58 obachman Exp $
     5// $Id: clapsing.cc,v 1.56 1999-10-22 11:14:06 obachman Exp $
    66/*
    77* ABSTRACT: interface between Singular and factory
     
    638638    if (with_exps!=1)
    639639    {
    640       (*v)=new intvec(1);
     640      (*v)=NewIntvec1(1);
    641641      (**v)[0]=1;
    642642    }
     
    769769        J++;
    770770      }
    771       *v = new intvec( n );
     771      *v = NewIntvec1( n );
    772772    }
    773773    res = idInit( n ,1);
     
    816816        {
    817817          intvec *w=*v;
    818           *v = new intvec( max(n-j,1) );
     818          *v = NewIntvec1( max(n-j,1) );
    819819          for (i=0,j=0;i<w->length();i++)
    820820          {
  • Singular/extra.cc

    r9a50a2 r477993  
    22*  Computer Algebra System SINGULAR      *
    33*****************************************/
    4 /* $Id: extra.cc,v 1.111 1999-10-22 09:07:00 obachman Exp $ */
     4/* $Id: extra.cc,v 1.112 1999-10-22 11:14:07 obachman Exp $ */
    55/*
    66* ABSTRACT: general interface to internals of Singular ("system" command)
     
    934934        int anz = r.anz_punkte;    // number of points
    935935        int dim = (currRing->N);     // dimension
    936         intvec* v = new intvec( anz*dim );
     936        intvec* v = NewIntvec1( anz*dim );
    937937        for (i=0; i<anz*dim; i++)    // copy points
    938938          (*v)[i] = r.pu[i];
     
    941941        //---<>--degenerations---------
    942942        int deg = r.deg;    // number of points
    943         intvec* w = new intvec( r.speicher );  // necessary memeory
     943        intvec* w = NewIntvec1( r.speicher );  // necessary memeory
    944944        i=0;               // start copying
    945945        do
  • Singular/feResource.cc

    r9a50a2 r477993  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: feResource.cc,v 1.12 1999-09-21 16:40:15 obachman Exp $ */
     4/* $Id: feResource.cc,v 1.13 1999-10-22 11:14:07 obachman Exp $ */
    55/*
    66* ABSTRACT: management of resources
     
    132132 *
    133133 *****************************************************************/
     134char* feGetResource(const char id)
     135{
     136  return feResource(id);
     137}
     138
    134139char* feResource(const char id, int warn = -1)
    135140{
  • Singular/febase.h

    r9a50a2 r477993  
    44*  Computer Algebra System SINGULAR     *
    55****************************************/
    6 /* $Id: febase.h,v 1.40 1999-09-22 14:11:23 Singular Exp $ */
     6/* $Id: febase.h,v 1.41 1999-10-22 11:14:07 obachman Exp $ */
    77/*
    88* ABSTRACT: basic i/o
     
    9696#define feReportBug(s) fePrintReportBug(s, __FILE__, __LINE__)
    9797void fePrintReportBug(char* msg, char* file, int line);
     98char* feGetResource(const char id);
    9899
    99100#ifdef __cplusplus
  • Singular/grammar.y

    r9a50a2 r477993  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: grammar.y,v 1.72 1999-10-14 14:27:04 obachman Exp $ */
     4/* $Id: grammar.y,v 1.73 1999-10-22 11:14:08 obachman Exp $ */
    55/*
    66* ABSTRACT: SINGULAR shell grammatik
     
    887887            idhdl h=(idhdl)v->data;
    888888            delete IDINTVEC(h);
    889             IDINTVEC(h) = new intvec(r,c,0);
     889            IDINTVEC(h) = NewIntvec3(r,c,0);
    890890            if (IDINTVEC(h)==NULL) YYERROR;
    891891          }
     
    899899               h=(idhdl)v->data;
    900900               delete IDINTVEC(h);
    901                IDINTVEC(h) = new intvec(1,1,0);
     901               IDINTVEC(h) = NewIntvec3(1,1,0);
    902902               v=v->next;
    903903            } while (v!=NULL);
     
    959959          {
    960960            memset(&$$,0,sizeof($$));
    961             intvec *iv = new intvec(2);
     961            intvec *iv = NewIntvec1(2);
    962962            (*iv)[0] = 1;
    963963            (*iv)[1] = $1;
     
    973973              slLength =  exprlist_length(sl);
    974974              int l = 2 +  slLength;
    975               intvec *iv = new intvec(l);
     975              intvec *iv = NewIntvec1(l);
    976976              (*iv)[0] = slLength;
    977977              (*iv)[1] = $1;
  • Singular/hdegree.cc

    r9a50a2 r477993  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: hdegree.cc,v 1.17 1999-10-14 14:27:04 obachman Exp $ */
     4/* $Id: hdegree.cc,v 1.18 1999-10-22 11:14:08 obachman Exp $ */
    55/*
    66*  ABSTRACT -  dimension, multiplicity, HC, kbase
     
    210210intvec * scIndIntvec(ideal S, ideal Q)
    211211{
    212   intvec *Set=new intvec(pVariables);
     212  intvec *Set=NewIntvec1(pVariables);
    213213  Exponent_t  mc,i;
    214214  hexist = hInit(S, Q, &hNexist);
     
    294294  intvec *Set;
    295295
    296   Set = ISet->set = new intvec(pVariables);
     296  Set = ISet->set = NewIntvec1(pVariables);
    297297  for (iv=pVariables; iv!=0 ; iv--)
    298298  {
     
    454454  {
    455455    hMu2++;
    456     sm->set = new intvec(pVariables);
     456    sm->set = NewIntvec1(pVariables);
    457457    sm->nx = (indset)Alloc0SizeOf(indlist);
    458458    return sm;
  • Singular/hilb.cc

    r9a50a2 r477993  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: hilb.cc,v 1.10 1999-10-14 14:27:05 obachman Exp $ */
     4/* $Id: hilb.cc,v 1.11 1999-10-22 11:14:09 obachman Exp $ */
    55/*
    66*  ABSTRACT -  Hilbert series
     
    217217  if (hNexist==0)
    218218  {
    219     hseries1=new intvec(2);
     219    hseries1=NewIntvec1(2);
    220220    (*hseries1)[0]=1;
    221221    (*hseries1)[1]=0;
     
    297297        if (l > k)
    298298        {
    299           work = new intvec(l);
     299          work = NewIntvec1(l);
    300300          for (ii=0; ii<k; ii++)
    301301            (*work)[ii] = (*hseries1)[ii];
     
    319319  if (k==0)
    320320  {
    321     hseries1=new intvec(2);
     321    hseries1=NewIntvec1(2);
    322322    (*hseries1)[0]=0;
    323323    (*hseries1)[1]=0;
     
    329329    if (l!=k)
    330330    {
    331       work = new intvec(l);
     331      work = NewIntvec1(l);
    332332      for (ii=l-2; ii>=0; ii--)
    333333        (*work)[ii] = (*hseries1)[ii];
     
    373373  if (hseries1 == NULL)
    374374    return NULL;
    375   work = new intvec(hseries1);
     375  work = NewIntvec1(hseries1);
    376376  k = l = work->length()-1;
    377377  s = 0;
     
    393393    }
    394394  }
    395   hseries2 = new intvec(k+1);
     395  hseries2 = NewIntvec1(k+1);
    396396  for (i = k-1; i >= 0; i--)
    397397    (*hseries2)[i] = (*work)[i];
  • Singular/ideals.cc

    r9a50a2 r477993  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: ideals.cc,v 1.68 1999-10-21 11:36:32 pohl Exp $ */
     4/* $Id: ideals.cc,v 1.69 1999-10-22 11:14:09 obachman Exp $ */
    55/*
    66* ABSTRACT - all basic methods to manipulate ideals
     
    427427{
    428428  poly p,q;
    429   intvec * result = new intvec(IDELEMS(id));
     429  intvec * result = NewIntvec1(IDELEMS(id));
    430430  int i, j, actpos=0, newpos, l;
    431431  int diff, olddiff, lastcomp, newcomp;
     
    27802780  }
    27812781  diff = (int *)Alloc0(cmax*sizeof(int));
    2782   if (w!=NULL) *w=new intvec(cmax-1);
     2782  if (w!=NULL) *w=NewIntvec1(cmax-1);
    27832783  iscom = (int *)Alloc0(cmax*sizeof(int));
    27842784  i=0;
     
    30473047intvec * idMWLift(ideal mod,intvec * weights)
    30483048{
    3049   if (idIs0(mod)) return new intvec(2);
     3049  if (idIs0(mod)) return NewIntvec1(2);
    30503050  int i=IDELEMS(mod);
    30513051  while ((i>0) && (mod->m[i-1]==NULL)) i--;
    3052   intvec *result = new intvec(i+1);
     3052  intvec *result = NewIntvec1(i+1);
    30533053  while (i>0)
    30543054  {
     
    31893189intvec * idQHomWeights(ideal id)
    31903190{
    3191   intvec * imat=new intvec(2*pVariables,pVariables,0);
     3191  intvec * imat=NewIntvec3(2*pVariables,pVariables,0);
    31923192  poly actHead=NULL,wPoint=NULL;
    31933193  int actIndex,i=-1,j=1,k;
     
    32473247  int rg=arg->rank;
    32483248  ideal res = idCopy(arg);
    3249   intvec *indexMap=new intvec(rg+1);
    3250   intvec *toKill=new intvec(rg+1);
     3249  intvec *indexMap=NewIntvec1(rg+1);
     3250  intvec *toKill=NewIntvec1(rg+1);
    32513251
    32523252  loop
  • Singular/intvec.cc

    r9a50a2 r477993  
    22*  Computer Algebra System SINGULAR      *
    33*****************************************/
    4 /* $Id: intvec.cc,v 1.14 1999-10-15 16:07:06 obachman Exp $ */
     4/* $Id: intvec.cc,v 1.15 1999-10-22 11:14:10 obachman Exp $ */
    55/*
    66* ABSTRACT: class intvec: lists/vectors of integers
     
    1212#include "febase.h"
    1313#include "intvec.h"
     14#include "mmemory.h"
    1415
    1516/*0 implementation*/
     17
     18#ifdef MDEBUG
     19intvec::intvec(char* file, int line, int l)
     20{
     21  v = (int *)mmDBAllocBlock0(sizeof(int)*l, file, line);
     22  row = l;
     23  col = 1;
     24}
     25
     26intvec::intvec(char* file, int line, intvec* iv)
     27{
     28  row = iv->rows();
     29  col = iv->cols();
     30  v   = (int *)mmDBAllocBlock(sizeof(int)*row*col, file, line);
     31  for (int i=0; i<row*col; i++)
     32  {
     33    v[i] = (*iv)[i];
     34  }
     35}
     36
     37intvec::intvec(char* file, int line, int s, int e)
     38{
     39  int inc;
     40  col = 1;
     41  if (s<e)
     42  {
     43    row =  e-s+1;
     44    inc =  1;
     45  }
     46  else
     47  {
     48    row = s-e+1;
     49    inc = -1;
     50  }
     51  v = (int *)mmDBAllocBlock(sizeof(int)*row, file, line);
     52  for (int i=0; i<row; i++)
     53  {
     54    v[i] = s;
     55    s+=inc;
     56  }
     57}
     58
     59intvec::intvec(char* file, int line, int r, int c, int init)
     60{
     61  row = r;
     62  col = c;
     63  int l = r*c;
     64  if ((r>0) && (c>0))
     65    v = (int *)mmDBAllocBlock(sizeof(int)*l, file, line);
     66  else
     67    v = NULL;
     68  for (int i=0; i<l; i++)
     69  {
     70    v[i] = init;
     71  }
     72}
     73
     74#endif // ! MDEBUG
     75
    1676intvec::intvec(intvec* iv)
    1777{
     
    40100  }
    41101  v = (int *)Alloc(sizeof(int)*row);
    42   //if (v!=NULL)
    43   {
    44     for (int i=0; i<row; i++)
    45     {
    46       v[i] = s;
    47       s+=inc;
    48     }
    49   }
    50   //else
    51   //{
    52   //  Werror("internal error: creating intvec(%d)",row);
    53   //  row=0;
    54   //}
     102  for (int i=0; i<row; i++)
     103  {
     104    v[i] = s;
     105    s+=inc;
     106  }
    55107}
    56108
     
    64116  else
    65117    v = NULL;
    66   if (v!=NULL)
    67   {
    68     for (int i=0; i<l; i++)
    69     {
    70       v[i] = init;
    71     }
    72   }
    73   else
    74   {
    75     Werror("internal error: creating intmat(%d,%d)",row,col);
    76     row=0;
     118  for (int i=0; i<l; i++)
     119  {
     120    v[i] = init;
    77121  }
    78122}
     
    208252intvec * ivCopy(intvec * o)
    209253{
    210   intvec * iv=new intvec(o);
     254  intvec * iv=NewIntvecIv(o);
    211255  return iv;
    212256}
     
    221265  if (a->cols() == 1)
    222266  {
    223     iv = new intvec(ma);
     267    iv = NewIntvec1(ma);
    224268    for (i=0; i<mn; i++) (*iv)[i] = (*a)[i] + (*b)[i];
    225269    if (ma > mn)
     
    237281  }
    238282  if (mn != ma) return NULL;
    239   iv = new intvec(a);
     283  iv = NewIntvec1(a);
    240284  for (i=0; i<mn*a->cols(); i++) { (*iv)[i] += (*b)[i]; }
    241285  return iv;
     
    251295  if (a->cols() == 1)
    252296  {
    253     iv = new intvec(ma);
     297    iv = NewIntvec1(ma);
    254298    for (i=0; i<mn; i++) (*iv)[i] = (*a)[i] - (*b)[i];
    255299    if (ma > mn)
     
    267311  }
    268312  if (mn != ma) return NULL;
    269   iv = new intvec(a);
     313  iv = NewIntvec1(a);
    270314  for (i=0; i<mn*a->cols(); i++) { (*iv)[i] -= (*b)[i]; }
    271315  return iv;
     
    275319{
    276320  int i, j, r = o->rows(), c = o->cols();
    277   intvec * iv=new intvec(c, r, 0);
     321  intvec * iv= NewIntvec3(c, r, 0);
    278322  for (i=0; i<r; i++)
    279323  {
     
    301345  intvec * iv;
    302346  if (ca != rb) return NULL;
    303   iv = new intvec(ra, cb, 0);
     347  iv = NewIntvec3(ra, cb, 0);
    304348  for (i=0; i<ra; i++)
    305349  {
     
    420464static intvec * ivIndepCols(intvec * imat)
    421465{
    422   intvec * result=new intvec(1,imat->cols(),0);
     466  intvec * result=NewIntvec3(1,imat->cols(),0);
    423467  int i,j;
    424468
     
    437481static intvec * ivBasicSol(intvec * imat)
    438482{
    439   intvec * result = new intvec(2*imat->cols(),imat->cols(),0);
    440   intvec * indep=ivIndepCols(imat),*actsol=new intvec(imat->cols());
     483  intvec * result = NewIntvec3(2*imat->cols(),imat->cols(),0);
     484  intvec * indep=ivIndepCols(imat),*actsol=NewIntvec1(imat->cols());
    441485  int actPosSol=1,actNegSol=imat->cols()+1,i=imat->cols(),j,k;
    442486  int tgcd,tlcm;
     
    500544intvec * ivSolveIntMat(intvec * imat)
    501545{
    502   intvec * result=new intvec(imat->cols());
     546  intvec * result=NewIntvec1(imat->cols());
    503547  intvec * basesol=ivBasicSol(imat);
    504548  int i=imat->cols(),j,k,l,t;
  • Singular/intvec.h

    r9a50a2 r477993  
    44*  Computer Algebra System SINGULAR     *
    55****************************************/
    6 /* $Id: intvec.h,v 1.9 1999-10-15 16:07:06 obachman Exp $ */
     6/* $Id: intvec.h,v 1.10 1999-10-22 11:14:10 obachman Exp $ */
    77/*
    88* ABSTRACT: class intvec: lists/vectors of integers
     
    1212#include "febase.h"
    1313
    14 #ifdef MDEBUG
    15 #define INLINE_THIS
     14// Macros for getting new intvecs to enable debugging of memory
     15#ifdef MDEBUG
     16#define NewIntvec0()        new intvec(__FILE__, __LINE__)
     17#define NewIntvec1(l)       new intvec(__FILE__, __LINE__, l)
     18#define NewIntvec2(s, e)    new intvec(__FILE__, __LINE__, s, e)
     19#define NewIntvec3(r, c, i) new intvec(__FILE__, __LINE__, r, c, i)
     20#define NewIntvecIv(iv)     new intvec(__FILE__, __LINE__, iv)
    1621#else
    17 #define INLINE_THIS inline
     22#define NewIntvec0  new intvec
     23#define NewIntvec1  new intvec
     24#define NewIntvec2  new intvec
     25#define NewIntvec3  new intvec
     26#define NewIntvecIv new intvec
    1827#endif
    1928
    2029class intvec
    2130{
    22   private:
    23     int *v;
    24     int row;
    25     int col;
    26   public:
    27   INLINE_THIS intvec(int l = 1);
     31private:
     32  int *v;
     33  int row;
     34  int col;
     35public:
     36
     37#ifdef MDEBUG
     38  intvec(char* file, int line, int l = 1);
     39  intvec(char* file, int line, int s, int e);
     40  intvec(char* file, int line, int r, int c, int init);
     41  intvec(char* file, int line, intvec* iv);
     42#endif
     43
     44  intvec(int l = 1)
     45    {
     46      v = (int *)Alloc0(sizeof(int)*l);
     47      row = l;
     48      col = 1;
     49    }
     50  intvec(int s, int e);
     51  intvec(int r, int c, int init);
     52  intvec(intvec* iv);
    2853 
    29     intvec(int s, int e);
    30     intvec(int r, int c, int init);
    31     intvec(intvec* iv);
    32     int range(int i)
    33        { return ((i<row) && (i>=0) && (col==1)); }
    34     int range(int i, int j)
    35        { return ((i<row) && (i>=0) && (j<col) && (j>=0)); }
    36     int& operator[](int i)
     54  int range(int i)
     55    { return ((i<row) && (i>=0) && (col==1)); }
     56  int range(int i, int j)
     57    { return ((i<row) && (i>=0) && (j<col) && (j>=0)); }
     58  int& operator[](int i)
    3759    {
    38        #ifndef NDEBUG
    39        if((i<0)||(i>=row*col))
    40        {
    41           Werror("wrong intvec index:%d\n",i);
    42        }
    43        #endif
    44        return v[i];
     60#ifndef NDEBUG
     61      if((i<0)||(i>=row*col))
     62      {
     63        Werror("wrong intvec index:%d\n",i);
     64      }
     65#endif
     66      return v[i];
    4567    }
    4668#define IMATELEM(M,I,J) (M)[(I-1)*(M).cols()+J-1]
    47     void operator+=(int intop);
    48     void operator-=(int intop);
    49     void operator*=(int intop);
    50     void operator/=(int intop);
    51     void operator%=(int intop);
    52     // -2: not compatible, -1: <, 0:=, 1: >
    53     int compare(intvec* o);
    54     int compare(int o);
    55     int  length() const { return col*row; }
    56     int  cols() const { return col; }
    57     int  rows() const { return row; }
    58     void length(int l) { row = l; col = 1; }
    59     void show(int mat=0,int spaces=0);
    60     void makeVector() { row*=col;col=1; }
    61     // keiner (ausser obachman) darf das folgenden benutzen !!!
    62     int * ivGetVec() { return v; }
    63     char * String(int dim = 2);
    64     char * ivString(int mat=0,int spaces=0, int dim=2);
    65     ~intvec()
    66        {
     69  void operator+=(int intop);
     70  void operator-=(int intop);
     71  void operator*=(int intop);
     72  void operator/=(int intop);
     73  void operator%=(int intop);
     74  // -2: not compatible, -1: <, 0:=, 1: >
     75  int compare(intvec* o);
     76  int compare(int o);
     77  int  length() const { return col*row; }
     78  int  cols() const { return col; }
     79  int  rows() const { return row; }
     80  void length(int l) { row = l; col = 1; }
     81  void show(int mat=0,int spaces=0);
     82  void makeVector() { row*=col;col=1; }
     83  // keiner (ausser obachman) darf das folgenden benutzen !!!
     84  int * ivGetVec() { return v; }
     85  char * String(int dim = 2);
     86  char * ivString(int mat=0,int spaces=0, int dim=2);
     87  ~intvec()
     88    {
    6789#ifdef MDEBUG
    68          mmTestL(this);
     90      mmTestL(this);
    6991#endif
    70          if (v!=NULL)
    71          {
    72             Free((ADDRESS)v,sizeof(int)*row*col);
    73             v=NULL;
    74          }
    75        }
    76     void ivTEST()
    77        {
     92      if (v!=NULL)
     93      {
     94        Free((ADDRESS)v,sizeof(int)*row*col);
     95        v=NULL;
     96      }
     97    }
     98  void ivTEST()
     99    {
    78100#ifdef MDEBUG
    79          mmTestL(this);
    80          mmTest((ADDRESS)v,sizeof(int)*row*col);
     101      mmTestL(this);
     102      mmTest((ADDRESS)v,sizeof(int)*row*col);
    81103#endif
    82        }
     104    }
    83105};
    84106intvec * ivCopy(intvec * o);
     
    93115intvec * ivSolveIntMat(intvec * imat);
    94116
    95 #if ! defined(MDEBUG) || defined(INTVEC_CC)
    96 INLINE_THIS intvec::intvec(int l=1)
    97 {
    98   v = (int *)Alloc0(sizeof(int)*l);
    99   row = l;
    100   col = 1;
    101 }
    102 #endif
    103 
    104117#undef INLINE_THIS
    105118
  • Singular/iparith.cc

    r9a50a2 r477993  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: iparith.cc,v 1.183 1999-10-22 09:07:01 obachman Exp $ */
     4/* $Id: iparith.cc,v 1.184 1999-10-22 11:14:10 obachman Exp $ */
    55
    66/*
     
    398398static BOOLEAN jjDOTDOT(leftv res, leftv u, leftv v)
    399399{
    400   res->data=(char *)new intvec((int)u->Data(),(int)v->Data());
     400  res->data=(char *)NewIntvec2((int)u->Data(),(int)v->Data());
    401401  return FALSE;
    402402}
     
    25982598  if (w==NULL)
    25992599  {
    2600     w = new intvec(rk);
     2600    w = NewIntvec1(rk);
    26012601    delete_w=TRUE;
    26022602  }
     
    27832783  int s=pVariables;
    27842784  if (v->Typ()==VECTOR_CMD) s++;
    2785   intvec *iv=new intvec(s);
     2785  intvec *iv=NewIntvec1(s);
    27862786  if (p!=NULL)
    27872787  {
     
    39643964static BOOLEAN jjINTMAT3(leftv res, leftv u, leftv v,leftv w)
    39653965{
    3966   intvec* im= new intvec((int)v->Data(),(int)w->Data(), 0);
     3966  intvec* im= NewIntvec3((int)v->Data(),(int)w->Data(), 0);
    39673967  intvec* arg = (intvec*) u->Data();
    39683968  int i, n = min(im->cols()*im->rows(), arg->cols()*arg->rows());
     
    40554055  int r=(int)v->Data();
    40564056  int c=(int)w->Data();
    4057   intvec *iv = new intvec(r, c, 0);
     4057  intvec *iv = NewIntvec3(r, c, 0);
    40584058  if (iv->rows()==0)
    40594059  {
     
    45584558  leftv h=v;
    45594559  if (h!=NULL) i=exprlist_length(h);
    4560   intvec *iv=new intvec(i);
     4560  intvec *iv=NewIntvec1(i);
    45614561  i=0;
    45624562  while (h!=NULL)
  • Singular/ipassign.cc

    r9a50a2 r477993  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: ipassign.cc,v 1.50 1999-10-14 14:27:07 obachman Exp $ */
     4/* $Id: ipassign.cc,v 1.51 1999-10-22 11:14:12 obachman Exp $ */
    55
    66/*
     
    202202      if (i>=iv->length())
    203203      {
    204         intvec *iv1=new intvec(i+1);
     204        intvec *iv1=NewIntvec1(i+1);
    205205        (*iv1)[i]=(int)a->Data();
    206206        intvec *ivn=ivAdd(iv,iv1);
     
    13531353  {
    13541354    case INTVEC_CMD:
    1355       nok=jjA_L_INTVEC(l,r,new intvec(exprlist_length(r)));
     1355      nok=jjA_L_INTVEC(l,r,NewIntvec1(exprlist_length(r)));
    13561356      break;
    13571357    case INTMAT_CMD:
    13581358    {
    1359       nok=jjA_L_INTVEC(l,r,new intvec(IDINTVEC((idhdl)l->data)));
     1359      nok=jjA_L_INTVEC(l,r,NewIntvec1(IDINTVEC((idhdl)l->data)));
    13601360      break;
    13611361    }
  • Singular/ipconv.cc

    r9a50a2 r477993  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: ipconv.cc,v 1.19 1999-10-14 14:27:08 obachman Exp $ */
     4/* $Id: ipconv.cc,v 1.20 1999-10-22 11:14:12 obachman Exp $ */
    55/*
    66* ABSTRACT: automatic type conversions
     
    113113static void * iiI2Iv(void *data)
    114114{
    115   intvec *iv=new intvec((int)data,(int)data);
     115  intvec *iv=NewIntvec2((int)data,(int)data);
    116116  return (void *)iv;
    117117}
  • Singular/ipid.cc

    r9a50a2 r477993  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: ipid.cc,v 1.36 1999-10-20 13:30:02 obachman Exp $ */
     4/* $Id: ipid.cc,v 1.37 1999-10-22 11:14:12 obachman Exp $ */
    55
    66/*
     
    136136      case INTVEC_CMD:
    137137      case INTMAT_CMD:
    138         IDINTVEC(h) = new intvec();
     138        IDINTVEC(h) = NewIntvec0();
    139139        break;
    140140      case NUMBER_CMD:
  • Singular/kstd1.cc

    r9a50a2 r477993  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: kstd1.cc,v 1.43 1999-10-22 09:07:02 obachman Exp $ */
     4/* $Id: kstd1.cc,v 1.44 1999-10-22 11:14:13 obachman Exp $ */
    55/*
    66* ABSTRACT:
     
    17741774  if (delete_w)
    17751775  {
    1776     temp_w=new intvec((strat->ak)+1);
     1776    temp_w=NewIntvec1((strat->ak)+1);
    17771777    w = &temp_w;
    17781778  }
  • Singular/misc.cc

    r9a50a2 r477993  
    320320    if(strcmp(n,"get")==0)
    321321    {
    322       intvec *w=new intvec(2);
     322      intvec *w=NewIntvec1(2);
    323323      (*w)[0]=test;
    324324      (*w)[1]=verbose;
  • Singular/mmbt.c

    r9a50a2 r477993  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: mmbt.c,v 1.13 1999-10-22 09:07:03 obachman Exp $ */
     4/* $Id: mmbt.c,v 1.14 1999-10-22 11:14:14 obachman Exp $ */
    55/*
    66* ABSTRACT: backtrace: part of memory subsystem (for linux/elf)
     
    2525#include "febase.h"
    2626#include "mmbt.h"
     27#include "febase.h"
     28
    2729
    2830#ifdef MTRACK
    29 #ifndef __OPTIMIZE__
     31// #ifndef __OPTIMIZE__
    3032/* does only work in debug mode:
    3133* requires that -fomit-frame-pointer is not given
     
    9092} p2n[MAX_PROCS_BT];
    9193
    92 extern char* feResource(char what);
    9394static int mm_p2n_max = -1;
    9495void mmP2cNameInit()
     
    9798  int i,j;
    9899  char n[128];
    99   char s[1000];
    100   sprintf(s, "./mprnm -p %s >nm.log", "Singularg");
     100  char s[2000];
     101  sprintf(s, "%s/mprnm -mprdem %s/mprdem -p %s >nm.log",
     102          feGetResource('b'), feGetResource('b'), feGetResource('S'));
    101103  system(s);
    102104  f=fopen("nm.log","r");
     
    116118  }
    117119  fclose(f);
    118 //  unlink("nm.log");
     120  unlink("nm.log");
    119121  p2n[i].name="??";
    120122  p2n[i].p=~1;
     
    207209}
    208210#endif /* linux, i386 */
    209 #endif /* not optimize */
     211// #endif /* not optimize */
    210212#endif /* MTRACK */
  • Singular/mmbt.h

    r9a50a2 r477993  
    44*  Computer Algebra System SINGULAR     *
    55****************************************/
    6 /* $Id: mmbt.h,v 1.5 1999-10-22 09:07:04 obachman Exp $ */
     6/* $Id: mmbt.h,v 1.6 1999-10-22 11:14:14 obachman Exp $ */
    77/*
    88* ABSTRACT: backtrace: part of memory subsystem (for linux/elf)
     
    1515
    1616#ifdef MTRACK
    17 #ifndef __OPTIMIZE__
     17/* the maximal level of stacks to remember in debug (MTRACK) mode */
     18#define BT_MAXSTACK 10
     19
     20// #ifndef __OPTIMIZE__
    1821/* does only work in debug mode:
    1922* requires that -fomit-frame-pointer is not given
     
    3235void mmDBPrintThisStack(FILE *fd, void* memblock, int all, int free);
    3336#endif /* linux, i386 */
    34 #endif /* not optimize */
     37// #endif /* not optimize */
    3538#endif /* MTRACK */
    3639
  • Singular/mmprivate.h

    r9a50a2 r477993  
    44*  Computer Algebra System SINGULAR     *
    55****************************************/
    6 /* $Id: mmprivate.h,v 1.14 1999-10-19 14:55:40 obachman Exp $ */
     6/* $Id: mmprivate.h,v 1.15 1999-10-22 11:14:14 obachman Exp $ */
    77/*
    88* ABSTRACT
     
    1111#include "mod2.h"
    1212#include "structs.h"
     13#ifdef MTRACK
     14#include "mmbt.h"
     15#endif
    1316
    1417#if defined(HAVE_ASO) && HAVE_ASO == 1
  • Singular/mod2.h.in

    r9a50a2 r477993  
    55 *          DO NOT EDIT!
    66 *
    7  *  Version: $Id: mod2.h.in,v 1.71 1999-10-19 13:39:42 Singular Exp $
     7 *  Version: $Id: mod2.h.in,v 1.72 1999-10-22 11:14:15 obachman Exp $
    88 *******************************************************************/
    99#ifndef MOD2_H
     
    398398/* works only under linux/elf */
    399399#define MTRACK
    400 /* the maximal level of stacks to remember in debug (MTRACK) mode */
    401 #define BT_MAXSTACK 10
    402 /* define to enable stack storing of free callss, as well */
     400/* define to enable stack storing of free calls, as well */
    403401#undef MTRACK_FREE
    404 #endif
     402
     403#endif /* !NDEBUG  */
     404
    405405
    406406/* #define PAGE_TEST */
     
    412412#ifdef HAVE_MPSR
    413413#define MPSR_DEBUG
    414 #endif
    415 
    416 /* MLIST requires MDEBUG */
    417 #ifdef MLIST
    418 #ifndef MDEBUG
    419 #define MDEBUG 0
    420 #endif
    421 #endif
    422 
    423 /* MTRACK requires MDEBUG and MLIST*/
    424 #ifdef MTRACK
    425 #ifndef MDEBUG
    426 #define MDEBUG 1
    427 #endif
    428 #ifndef MLIST
    429 #define MLIST
    430 #endif
    431414#endif
    432415
     
    443426#endif
    444427#endif
    445 
    446 #ifdef MTRACK
    447 #define BT_MAXSTACK 10
    448 #endif /* MTRACK */
    449428
    450429/* define SPECTRUM_DEBUG and SPECTRUM_PRINT for debugging the spectrum code */
     
    489468
    490469#endif /* not NDEBUG */
     470
     471/* MLIST requires MDEBUG */
     472#ifdef MLIST
     473#ifndef MDEBUG
     474#define MDEBUG 0
     475#endif
     476#endif
     477
     478/* MTRACK requires MDEBUG and MLIST*/
     479#ifdef MTRACK
     480#ifndef MDEBUG
     481#define MDEBUG 0
     482#endif
     483#ifndef MLIST
     484#define MLIST
     485#endif
     486#endif
     487
    491488
    492489#ifdef HAVE_DYNAMIC_LOADING
  • Singular/mpr_base.cc

    r9a50a2 r477993  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: mpr_base.cc,v 1.11 1999-10-14 14:27:22 obachman Exp $ */
     4/* $Id: mpr_base.cc,v 1.12 1999-10-22 11:14:15 obachman Exp $ */
    55
    66/*
     
    13891389  mprSTICKYPROT2("  resultant deg: %d\n", numSet0);
    13901390
    1391   uRPos= new intvec( numSet0, pLength((gls->m)[0])+1, 0 );
     1391  uRPos= NewIntvec3( numSet0, pLength((gls->m)[0])+1, 0 );
    13921392
    13931393  // sparse Matrix represented as a module where
  • Singular/mpsr_Get.cc

    r9a50a2 r477993  
    33****************************************/
    44
    5 /* $Id: mpsr_Get.cc,v 1.27 1999-10-14 14:27:24 obachman Exp $ */
     5/* $Id: mpsr_Get.cc,v 1.28 1999-10-22 11:14:16 obachman Exp $ */
    66/***************************************************************
    77 *
     
    501501                                  mpsr_leftv mlv)
    502502{
    503   intvec *iv = new intvec(node->numchild);
     503  intvec *iv = NewIntvec1(node->numchild);
    504504  int *v = iv->ivGetVec();
    505505
     
    531531  }
    532532
    533   iv = new intvec(row, col, 0);
     533  iv = NewIntvec3(row, col, 0);
    534534  v = iv->ivGetVec();
    535535  mp_failr(IMP_GetSint32Vector(link, &v, node->numchild));
  • Singular/polys-comp.h

    r9a50a2 r477993  
    44*  Computer Algebra System SINGULAR     *
    55****************************************/
    6 /* $Id: polys-comp.h,v 1.16 1999-10-22 09:07:05 obachman Exp $ */
     6/* $Id: polys-comp.h,v 1.17 1999-10-22 11:14:16 obachman Exp $ */
    77
    88/***************************************************************
     
    1616
    1717// need to undefine this, since longs might be negative
    18 #define unsigned
     18#define u_s
    1919
    2020#ifdef WORDS_BIGENDIAN
     
    3636do                                                                          \
    3737{                                                                           \
    38   register const unsigned long* s1 = &(p1->exp.l[currRing->pCompLowIndex]); \
    39   register const unsigned long* s2 = &(p2->exp.l[currRing->pCompLowIndex]); \
     38  register const u_s long* s1 = &(p1->exp.l[currRing->pCompLowIndex]); \
     39  register const u_s long* s2 = &(p2->exp.l[currRing->pCompLowIndex]); \
    4040  int _l = currRing->pCompLSize;                                            \
    4141  register int _i;                                                          \
     
    7272do                                                                            \
    7373{                                                                             \
    74   register const unsigned long* __s1 = &(p1->exp.l[currRing->pCompLowIndex]); \
    75   register const unsigned long* __s2 = &(p2->exp.l[currRing->pCompLowIndex]); \
     74  register const u_s long* __s1 = &(p1->exp.l[currRing->pCompLowIndex]); \
     75  register const u_s long* __s2 = &(p2->exp.l[currRing->pCompLowIndex]); \
    7676  register int __i = currRing->pCompLSize - 1;                                \
    7777  _memcmp(__s1, __s2, __i, actionE, goto _NotEqual);                          \
     
    9696}
    9797
    98 #define unsigned unsigned
    99 
    10098#endif // POLYS_COMP_H
    10199
  • Singular/semic.cc

    r9a50a2 r477993  
    180180    L->Init( 6 );
    181181
    182     intvec            *num  = new intvec( n );
    183     intvec            *den  = new intvec( n );
    184     intvec            *mult = new intvec( n );
     182    intvec            *num  = NewIntvec1( n );
     183    intvec            *den  = NewIntvec1( n );
     184    intvec            *mult = NewIntvec1( n );
    185185
    186186    for( int i=0; i<n; i++ )
  • Singular/sparsmat.cc

    r9a50a2 r477993  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: sparsmat.cc,v 1.14 1999-10-20 15:58:35 pohl Exp $ */
     4/* $Id: sparsmat.cc,v 1.15 1999-10-22 11:14:17 obachman Exp $ */
    55
    66/*
     
    248248    delete bareiss;
    249249    if (origR!=NULL) smRingClean(origR,tmpR);
    250     v=new intvec(1,pVariables);
     250    v=NewIntvec2(1,pVariables);
    251251  }
    252252  else
     
    255255    bareiss->smBareiss(x, y);
    256256    m = bareiss->smRes2Mod();
    257     v = new intvec(bareiss->smGetRed());
     257    v = NewIntvec1(bareiss->smGetRed());
    258258    bareiss->smToIntvec(v);
    259259    delete bareiss;
     
    296296    delete bareiss;
    297297    if (origR!=NULL) smRingClean(origR,tmpR);
    298     v=new intvec(1,pVariables);
     298    v=NewIntvec2(1,pVariables);
    299299  }
    300300  else
     
    303303    bareiss->smNewBareiss(x, y);
    304304    m = bareiss->smRes2Mod();
    305     v = new intvec(bareiss->smGetRed());
     305    v = NewIntvec1(bareiss->smGetRed());
    306306    bareiss->smToIntvec(v);
    307307    delete bareiss;
  • Singular/splist.cc

    r9a50a2 r477993  
    458458    // --------------------------------------------------------
    459459
    460     intvec            *nom  = new intvec( n );
    461     intvec            *den  = new intvec( n );
    462     intvec            *mult = new intvec( n );
     460    intvec            *nom  = NewIntvec1( n );
     461    intvec            *den  = NewIntvec1( n );
     462    intvec            *mult = NewIntvec1( n );
    463463
    464464    int count         = 0;
  • Singular/syz.cc

    r9a50a2 r477993  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: syz.cc,v 1.26 1999-10-19 12:42:48 obachman Exp $ */
     4/* $Id: syz.cc,v 1.27 1999-10-22 11:14:18 obachman Exp $ */
    55
    66/*
     
    5151    isIdeal = TRUE;
    5252  }
    53   w1 = new intvec(maxxx+IDELEMS(arg));
     53  w1 = NewIntvec1(maxxx+IDELEMS(arg));
    5454  if (!isIdeal)
    5555  {
     
    7171  }
    7272  delete (*w);
    73   *w = new intvec(IDELEMS(arg)+1);
     73  *w = NewIntvec1(IDELEMS(arg)+1);
    7474  for (i=0;i<IDELEMS(arg);i++)
    7575  {
     
    313313      reddeg0 = kInterRed(deg0);
    314314      idDelete(&deg0);
    315       have_del = new intvec(IDELEMS(res[index]));
     315      have_del = NewIntvec1(IDELEMS(res[index]));
    316316      for (i=0;i<IDELEMS(reddeg0);i++)
    317317      {
     
    497497//PrintLn();
    498498      k = idRankFreeModule(res[syzIndex]);
    499       w = new intvec(k+IDELEMS(res[syzIndex]));
    500       (*weights)[syzIndex] = new intvec(k);
     499      w = NewIntvec1(k+IDELEMS(res[syzIndex]));
     500      (*weights)[syzIndex] = NewIntvec1(k);
    501501      for (i=0;i<k;i++)
    502502      {
     
    725725  {
    726726    if (res[0]==NULL)
    727       result = new intvec(1,1,1);
     727      result = NewIntvec3(1,1,1);
    728728    else
    729       result = new intvec(1,1,res[0]->rank);
     729      result = NewIntvec3(1,1,res[0]->rank);
    730730    return result;
    731731  }
     
    777777  /*------ computation betti numbers --------------*/
    778778  rows -= mr;
    779   result = new intvec(rows,cols,0);
     779  result = NewIntvec3(rows,cols,0);
    780780  (*result)[(-mr)*cols] = /*idRankFreeModule(res[0])*/ rkl;
    781781  if ((!idIs0(res[0])) && ((*result)[(-mr)*cols]==0))
     
    861861    }
    862862  }
    863   intvec * exactresult=new intvec(j+1,k+1,0);
     863  intvec * exactresult=NewIntvec3(j+1,k+1,0);
    864864  for (i=0;i<exactresult->rows();i++)
    865865  {
     
    947947//Print("rsmin = %d\n",rsmin);
    948948    rs = rsmax-rsmin+1;
    949     result = new intvec(rs,i+2,0);
    950     tocancel = new intvec(rs);
     949    result = NewIntvec3(rs,i+2,0);
     950    tocancel = NewIntvec1(rs);
    951951/*-----------enter the Betti numbers-------------------------------*/
    952952    if (/*idRankFreeModule(res[0])*/ res[0]->rank==0)
     
    981981  {
    982982    homog = FALSE;
    983     tocancel = new intvec(1);
     983    tocancel = NewIntvec1(1);
    984984    k = length;
    985985    while ((k>0) && (idIs0(res[k-1]))) k--;
    986     result = new intvec (1,k+1,0);
     986    result = NewIntvec3(1,k+1,0);
    987987    (*result)[0] = res[0]->rank;
    988988    for (i=0;i<length;i++)
  • Singular/syz0.cc

    r9a50a2 r477993  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: syz0.cc,v 1.22 1999-10-14 14:27:34 obachman Exp $ */
     4/* $Id: syz0.cc,v 1.23 1999-10-22 11:14:18 obachman Exp $ */
    55/*
    66* ABSTRACT: resolutions
     
    3939  while ((Fl!=0) && (oldF[Fl-1]==NULL)) Fl--;
    4040  if (*modcomp!=NULL) delete modcomp;
    41   *modcomp = new intvec(rkF+2);
     41  *modcomp = NewIntvec1(rkF+2);
    4242  F=(polyset)Alloc0(Fmax*sizeof(poly));
    4343  j=0;
     
    486486
    487487  while ((Fl!=0) && (F[Fl-1]==NULL)) Fl--;
    488   newmodcomp = new intvec(Fl+2);
     488  newmodcomp = NewIntvec1(Fl+2);
    489489//for (j=0;j<Fl;j++) pWrite(F[j]);
    490490//PrintLn();
  • Singular/syz1.cc

    r9a50a2 r477993  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: syz1.cc,v 1.46 1999-10-20 11:56:19 obachman Exp $ */
     4/* $Id: syz1.cc,v 1.47 1999-10-22 11:14:18 obachman Exp $ */
    55/*
    66* ABSTRACT: resolutions
     
    424424  else
    425425  {
    426     iv = new intvec(IDELEMS(arg),1,-1);
     426    iv = NewIntvec3(IDELEMS(arg),1,-1);
    427427    for (i=0;i<IDELEMS(arg);i++)
    428428    {
     
    722722  int ** bin=syzstr->backcomponents;
    723723  ideal o_r=syzstr->orderedRes[index+1];
    724   intvec *result=new intvec(howmuch+1);
     724  intvec *result=NewIntvec1(howmuch+1);
    725725  BOOLEAN isDivisible;
    726726  SObject tso;
     
    773773  int ** bin=syzstr->backcomponents;
    774774  ideal o_r=syzstr->orderedRes[index+1];
    775   intvec *result=new intvec(howmuch+1);
    776   intvec *spl=new intvec(howmuch,1,-1);
     775  intvec *result=NewIntvec1(howmuch+1);
     776  intvec *spl=NewIntvec3(howmuch,1,-1);
    777777  BOOLEAN isDivisible;
    778778  SObject tso;
     
    896896  polyset redset=syzstr->orderedRes[index]->m;
    897897  poly p=NULL,q;
    898   intvec *spl1=new intvec(howmuch+1);
     898  intvec *spl1=NewIntvec1(howmuch+1);
    899899  SObject tso;
    900900  long * ShiftedComponents = syzstr->ShiftedComponents[index];
     
    17791779    j = j+sh;
    17801780    jj = jj+2;
    1781     result=new intvec(j,jj-sh,0);
     1781    result=NewIntvec3(j,jj-sh,0);
    17821782    IMATELEM(*result,1,1) = max(1,idRankFreeModule(syzstr->res[1]));
    17831783    for (i=sh;i<jj;i++)
     
    19511951    if (syzstr->resPairs!=NULL)
    19521952    {
    1953       syzstr->resolution = new intvec(syzstr->length+1);
     1953      syzstr->resolution = NewIntvec1(syzstr->length+1);
    19541954      SRes rP=syzstr->resPairs;
    19551955      (*syzstr->resolution)[0] = max(1,idRankFreeModule(syzstr->res[1]));
     
    19701970    {
    19711971      resolvente rr;
    1972       syzstr->resolution = new intvec(syzstr->length+2);
     1972      syzstr->resolution = NewIntvec1(syzstr->length+2);
    19731973      if (syzstr->minres!=NULL)
    19741974        rr = syzstr->minres;
     
    24112411    {
    24122412      rj = IDELEMS(ri);
    2413       changes = new intvec(rj+1,1,-1);
     2413      changes = NewIntvec3(rj+1,1,-1);
    24142414      while ((rj>0) && (ri->m[rj-1]==NULL)) rj--;
    24152415      j = k = 0;
     
    24562456  if ((syzstr->resPairs[index-1]!=NULL) && (!idIs0(syzstr->res[index])))
    24572457  {
    2458     result=new intvec(IDELEMS(syzstr->res[index])+1);
     2458    result=NewIntvec1(IDELEMS(syzstr->res[index])+1);
    24592459    for (int i=(*syzstr->Tl)[index-1]-1;i>=0;i--)
    24602460    {
     
    24742474static intvec * syOrdPairs(SSet sPairs, int length)
    24752475{
    2476   intvec * result=new intvec(length,1,-1);
     2476  intvec * result=NewIntvec3(length,1,-1);
    24772477  int i,j=0,k=-1,l,ii;
    24782478
     
    27062706  pComp0 = syzcomp2dpc;
    27072707/*--- initializes the data structures---------------*/
    2708   syzstr->Tl = new intvec(*length);
     2708  syzstr->Tl = NewIntvec1(*length);
    27092709  temp = idInit(IDELEMS(arg),arg->rank);
    27102710  for (i=0;i<IDELEMS(arg);i++)
  • Singular/syz2.cc

    r9a50a2 r477993  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: syz2.cc,v 1.6 1999-10-20 13:30:02 obachman Exp $ */
     4/* $Id: syz2.cc,v 1.7 1999-10-22 11:14:19 obachman Exp $ */
    55/*
    66* ABSTRACT: resolutions
     
    456456  ideal o_r=syzstr->res[index+1];
    457457  int i=0,i1=0,i2=0,l,ll=IDELEMS(o_r);
    458   intvec *result=new intvec(howmuch+1);
     458  intvec *result=NewIntvec1(howmuch+1);
    459459  BOOLEAN isDivisible;
    460460  SObject tso;
     
    494494#endif
    495495      //syDeletePair(&nextPairs[i]);
    496       if (*secondpairs==NULL) *secondpairs = new intvec(howmuch);
     496      if (*secondpairs==NULL) *secondpairs = NewIntvec1(howmuch);
    497497      (**secondpairs)[i2] = i+1;
    498498      i2++;
     
    578578{
    579579  int l=arg->rows()*arg->cols(),i=0,ii=0;
    580   intvec *tempV=new intvec(l);
     580  intvec *tempV=NewIntvec1(l);
    581581
    582582  while (i+ii<l)
     
    597597    return NULL;
    598598  }
    599   intvec * result=new intvec(i+1);
     599  intvec * result=NewIntvec1(i+1);
    600600  for (ii=0;ii<i;ii++)
    601601   (*result)[ii] = (*tempV)[ii];
     
    621621  SSet redset=syzstr->resPairs[index];
    622622  poly p=NULL,q,tp;
    623   intvec *spl1=new intvec(howmuch+1);
     623  intvec *spl1=NewIntvec1(howmuch+1);
    624624  SObject tso;
    625625  intvec *spl3=NULL;
    626626#ifdef USE_HEURISTIC1
    627   intvec *spl2=new intvec(howmuch+1,howmuch+1,0);
     627  intvec *spl2=NewIntvec3(howmuch+1,howmuch+1,0);
    628628  int there_are_superfluous=0;
    629629  int step=1,jj,j1,j2;
     
    931931  if (syzstr->hilb_coeffs[index+1]==NULL)
    932932  {
    933     syzstr->hilb_coeffs[index+1] = new intvec(16*((actord/16)+1));
     933    syzstr->hilb_coeffs[index+1] = NewIntvec1(16*((actord/16)+1));
    934934  }
    935935  else if (actord>=syzstr->hilb_coeffs[index+1]->length())
    936936  {
    937     intvec * ttt=new intvec(16*((actord/16)+1));
     937    intvec * ttt=NewIntvec1(16*((actord/16)+1));
    938938    for (i=syzstr->hilb_coeffs[index+1]->length()-1;i>=0;i--)
    939939    {
     
    10411041  ideal reor,toreor;
    10421042  int i,j,k,l,m,togo;
    1043   syzstr->betti = new intvec(maxdeg,maxindex+1,0);
     1043  syzstr->betti = NewIntvec3(maxdeg,maxindex+1,0);
    10441044  (*syzstr->betti)[0] = 1;
    10451045  for (i=1;i<=syzstr->length;i++)
     
    11521152#endif
    11531153  syzstr->length = *length = pVariables+2;
    1154   syzstr->Tl = new intvec(*length+1);
     1154  syzstr->Tl = NewIntvec1(*length+1);
    11551155  temp = idInit(IDELEMS(arg),arg->rank);
    11561156  for (i=0;i<IDELEMS(arg);i++)
  • Singular/walk.cc

    r9a50a2 r477993  
    22*  Computer Algebra System SINGULAR      *
    33*****************************************/
    4 /* $Id: walk.cc,v 1.1 1999-09-27 15:05:35 obachman Exp $ */
     4/* $Id: walk.cc,v 1.2 1999-10-22 11:14:20 obachman Exp $ */
    55/*
    66* ABSTRACT: Implementation of the Groebner walk
     
    158158  if (nw != NULL && nw != (int*) 1)
    159159  {
    160     next_weight = new intvec(currRing->N);
     160    next_weight = NewIntvec1(currRing->N);
    161161    int *nw_i = next_weight->ivGetVec();
    162162    int i;
  • Singular/weight.cc

    r9a50a2 r477993  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: weight.cc,v 1.10 1998-07-02 13:28:27 pohl Exp $ */
     4/* $Id: weight.cc,v 1.11 1999-10-22 11:14:20 obachman Exp $ */
    55
    66/*
     
    221221{
    222222  ideal F=(ideal)id->Data();
    223   intvec * iv = new intvec(pVariables);
     223  intvec * iv = NewIntvec1(pVariables);
    224224  polyset s;
    225225  int  sl, n, i;
     
    244244  res->data=(char *)idQHomWeights((ideal)v->Data());
    245245  if (res->data==NULL)
    246     res->data=(char *)new intvec(pVariables);
     246    res->data=(char *)NewIntvec1(pVariables);
    247247  return FALSE;
    248248}
Note: See TracChangeset for help on using the changeset viewer.