Changeset ac0bd6 in git


Ignore:
Timestamp:
Nov 8, 2010, 6:01:56 PM (14 years ago)
Author:
Hans Schoenemann <hannes@…>
Branches:
(u'fieker-DuVal', '117eb8c30fc9e991c4decca4832b1d19036c4c65')(u'spielwiese', '648d28f488f6ff08f5607ff229b9ad9e4a5b93c2')
Children:
5162dbe3ec9cd4ee705c56b52c148de9d9cf683a
Parents:
a7ee69c27ecef9708a4ea7677de1715f1ff6fa86
git-author:
Hans Schoenemann <hannes@mathematik.uni-kl.de>2010-11-08 18:01:56+01:00
git-committer:
Mohamed Barakat <mohamed.barakat@rwth-aachen.de>2011-11-09 11:55:36+01:00
Message:
moved pDiff to p_polys: p_Diff
Location:
polys
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • polys/monomials/p_polys.cc

    ra7ee69 rac0bd6  
    13661366}
    13671367
     1368/*2
     1369* returns the partial differentiate of a by the k-th variable
     1370* does not destroy the input
     1371*/
     1372poly p_Diff(poly a, int k, const ring r)
     1373{
     1374  poly res, f, last;
     1375  number t;
     1376
     1377  last = res = NULL;
     1378  while (a!=NULL)
     1379  {
     1380    if (p_GetExp(a,k,r)!=0)
     1381    {
     1382      f = p_LmInit(a,r);
     1383      t = n_Init(p_GetExp(a,k,r),r->cf);
     1384      pSetCoeff0(f,n_Mult(t,pGetCoeff(a),r->cf));
     1385      n_Delete(&t,r->cf);
     1386      if (n_IsZero(pGetCoeff(f),r->cf))
     1387        p_LmDelete(&f,r);
     1388      else
     1389      {
     1390        p_DecrExp(f,k,r);
     1391        p_Setm(f,r);
     1392        if (res==NULL)
     1393        {
     1394          res=last=f;
     1395        }
     1396        else
     1397        {
     1398          pNext(last)=f;
     1399          last=f;
     1400        }
     1401      }
     1402    }
     1403    pIter(a);
     1404  }
     1405  return res;
     1406}
    13681407/***************************************************************
    13691408 *
  • polys/monomials/p_polys.h

    ra7ee69 rac0bd6  
    17581758poly      p_DivideM(poly a, poly b, const ring r);
    17591759void      p_Lcm(poly a, poly b, poly m, const ring r);
     1760poly      p_Diff(poly a, int k, const ring r);
    17601761#endif // P_POLYS_H
    17611762
  • polys/polys.h

    ra7ee69 rac0bd6  
    291291#define pDivide(a,b) p_Divide(a,b,currRing)
    292292#define pLcm(a,b,m) p_Lcm(a,b,m,currRing)
    293 
    294 poly      pDiff(poly a, int k);
     293#define pDiff(a,b)  p_Diff(a,b,currRing)
    295294poly      pDiffOp(poly a, poly b,BOOLEAN multiply);
    296295
  • polys/polys1.cc

    ra7ee69 rac0bd6  
    352352  }
    353353  return rc;
    354 }
    355 
    356 /*2
    357 * returns the partial differentiate of a by the k-th variable
    358 * does not destroy the input
    359 */
    360 poly pDiff(poly a, int k)
    361 {
    362   poly res, f, last;
    363   number t;
    364 
    365   last = res = NULL;
    366   while (a!=NULL)
    367   {
    368     if (pGetExp(a,k)!=0)
    369     {
    370       f = pLmInit(a);
    371       t = nInit(pGetExp(a,k));
    372       pSetCoeff0(f,nMult(t,pGetCoeff(a)));
    373       nDelete(&t);
    374       if (nIsZero(pGetCoeff(f)))
    375         pLmDelete(&f);
    376       else
    377       {
    378         pDecrExp(f,k);
    379         pSetm(f);
    380         if (res==NULL)
    381         {
    382           res=last=f;
    383         }
    384         else
    385         {
    386           pNext(last)=f;
    387           last=f;
    388         }
    389       }
    390     }
    391     pIter(a);
    392   }
    393   return res;
    394354}
    395355
Note: See TracChangeset for help on using the changeset viewer.