Changeset 493225 in git for kernel/longalg.cc


Ignore:
Timestamp:
Dec 8, 2009, 7:11:06 PM (14 years ago)
Author:
Hans Schönemann <hannes@…>
Branches:
(u'spielwiese', 'fe61d9c35bf7c61f2b6cbf1b56e25e2f08d536cc')
Children:
32c11ff616c40bb7c3d5c756479b0507e505f330
Parents:
42660f97810c6af10af57af395d99b9a04bb8dad
Message:
nWrite indep. from currRing

git-svn-id: file:///usr/local/Singular/svn/trunk@12377 2c84dea3-7e68-4137-9b89-c4e89433aadc
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/longalg.cc

    r42660f r493225  
    5454       void     (*nacNormalize)(number &a);
    5555static number   (*nacNeg)(number a);
    56 static void     (*nacWrite)(number &a);
     56#define nacWrite(A) n_Write(A,nacRing)
    5757       number   (*nacCopy)(number a);
    5858static number   (*nacInvers)(number a);
     
    135135  nacIsZero      = nacRing->cf->nIsZero;
    136136  nacRead        = nacRing->cf->nRead;
    137   nacWrite       = nacRing->cf->nWrite;
    138137  nacGreaterZero = nacRing->cf->nGreaterZero;
    139138  nacIsOne       = nacRing->cf->nIsOne;
     
    413412*writes a polynomial number
    414413*/
    415 void napWrite(napoly p,const BOOLEAN has_denom)
    416 {
     414void napWrite(napoly p,const BOOLEAN has_denom, const ring r)
     415{
     416  ring nacring=r->algring;
    417417  if (p==NULL)
    418418    StringAppendS("0");
    419   else if (p_LmIsConstant(p,nacRing))
     419  else if (p_LmIsConstant(p,nacring))
    420420  {
    421421    BOOLEAN kl=FALSE;
    422422    if (has_denom)
    423423    {
    424       number den=nacRing->cf->cfGetDenom(pGetCoeff(p), nacRing);
    425       kl=!n_IsOne(den,nacRing);
    426       n_Delete(&den, nacRing);
     424      number den=nacring->cf->cfGetDenom(pGetCoeff(p),nacring );
     425      kl=!n_IsOne(den,nacring);
     426      n_Delete(&den, nacring);
    427427    }
    428428    if (kl) StringAppendS("(");
    429429    //StringAppendS("-1");
    430     nacWrite(pGetCoeff(p));
     430    n_Write(pGetCoeff(p),nacring);
    431431    if (kl) StringAppendS(")");
    432432  }
     
    437437    {
    438438      BOOLEAN wroteCoeff=FALSE;
    439       if ((p_LmIsConstant(p,nacRing))
    440       || ((!nacIsOne(pGetCoeff(p)))
    441         && (!nacIsMOne(pGetCoeff(p)))))
     439      if ((p_LmIsConstant(p,nacring))
     440      || ((!n_IsOne(pGetCoeff(p),nacring))
     441        && (!n_IsMOne(pGetCoeff(p),nacring))))
    442442      {
    443         nacWrite(pGetCoeff(p));
    444         wroteCoeff=(currRing->ShortOut==0);
     443        n_Write(pGetCoeff(p),nacring);
     444        wroteCoeff=(r->ShortOut==0);
    445445      }
    446       else if (nacIsMOne(pGetCoeff(p)))
     446      else if (n_IsMOne(pGetCoeff(p),nacring))
    447447      {
    448448        StringAppendS("-");
    449449      }
    450450      int  i;
    451       for (i = 0; i < naNumbOfPar; i++)
     451      for (i = 0; i < r->P; i++)
    452452      {
    453         int e=p_GetExp(p,i+1,nacRing);
     453        int e=p_GetExp(p,i+1,nacring);
    454454        if (e > 0)
    455455        {
     
    457457            StringAppendS("*");
    458458          else
    459             wroteCoeff=(currRing->ShortOut==0);
    460           StringAppendS(naParNames[i]);
     459            wroteCoeff=(r->ShortOut==0);
     460          StringAppendS(r->parameter[i]);
    461461          if (e > 1)
    462462          {
    463             if (currRing->ShortOut == 0)
     463            if (r->ShortOut == 0)
    464464              StringAppendS("^");
    465465            StringAppend("%d", e);
     
    470470      if (p==NULL)
    471471        break;
    472       if (nacGreaterZero(pGetCoeff(p)))
     472      if (n_GreaterZero(pGetCoeff(p),nacring))
    473473        StringAppendS("+");
    474474    }
     
    15101510*  writes a number
    15111511*/
    1512 void naWrite(number &phn)
     1512void naWrite(number &phn, const ring r)
    15131513{
    15141514  lnumber ph = (lnumber)phn;
     
    15191519    phn->s = 0;
    15201520    BOOLEAN has_denom=(ph->n!=NULL);
    1521     napWrite(ph->z,has_denom/*(ph->n!=NULL)*/);
     1521    napWrite(ph->z,has_denom/*(ph->n!=NULL)*/,r);
    15221522    if (has_denom/*(ph->n!=NULL)*/)
    15231523    {
    15241524      StringAppendS("/");
    1525       napWrite(ph->n,TRUE);
     1525      napWrite(ph->n,TRUE,r);
    15261526    }
    15271527  }
Note: See TracChangeset for help on using the changeset viewer.