PolynomialTools - Maple Programming Help

Online Help

All Products    Maple    MapleSim


Home : Support : Online Help : Mathematics : Algebra : Polynomials : PolynomialTools : PolynomialTools/PolynomialToPDE

PolynomialTools

  

PolynomialToPDE

  

convert polynomials to PDEs

  

PDEToPolynomial

  

convert PDEs to polynomials

 

Calling Sequence

Parameters

Description

Examples

Calling Sequence

PolynomialToPDE(polys, vars, depvars)

PDEToPolynomial(pdes, vars, depvars)

Parameters

polys

-

list (or set) of polynomials or polynomial equations in vars which is linear and homogeneous in the variables depvars

vars

-

list of independent variables

depvars

-

list of dependent variables

pdes

-

list or set of PDEs in the independent variables vars which is linear and homogeneous in its dependent variables depvars

Description

• 

The function PolynomialToPDE maps polynomials to linear homogeneous PDEs and has as its inverse PDEToPolynomial. These maps  implement an equivalence between polynomial ideals (and in general modules), and systems of linear homogeneous constant coefficient PDEs.

• 

These functions widen the set of tools that can be applied to both domains. For example, Groebner-like differential elimination algorithms, correspond to Groebner bases of modules under PolynomialToPDE. Efficiency features such as case-splitting in the differential packages, restricting time limits on the cases,  storage of partial results, and selecting maximal dimension cases are made available for polynomial systems through this map.  Conversely, polynomial features are made available for differential systems by using PDEToPolynomial. PDE solving can also benefit from this correspondence.

• 

Applied to a single polynomial (or PDE), the function PolynomialToPDE (or PDEToPolynomial) is respectively:

PolynomialToPDEp1xu1+...+pkxuk,x,u=p1D1,...,Dnu1x+...+pkD1,...,Dnukx

PDEToPolynomialp1D1,...,Dnu1x+...+pkD1,...,Dnukx,x,u=p1xu1+...+pkxuk

  

Here depvars=[u]=[u1,...,uk] are the dependent variables, and p1,p2,...,pk are polynomials in the independent variables vars=[x]=[x1,...,xn]. Also, D1,D2,...,Dn are the partial differential operators corresponding to x1,x2,...,xn. So PolynomialToPDE applies to polynomials which are linear and homogeneous in depvars=u, with coefficients that are polynomials in vars=x.   PolynomialToPDE (or PDEToPolynomial) of a list is obtained by applying the functions described above to each member of the list.

• 

PDEToPolynomial applies to PDEs which are linear and homogeneous in depvars=u, with coefficients independent of vars=x.

• 

In the case of one dependent variable the dependent variable is omitted: PDEToPolynomial([p(D1,...,Dn) u1(x)], [x], [u1]) yields px1,...,xn. Similarly, it is possible to apply PolynomialToPDE to a polynomial in vars, without any dependent variable  present in depvars.

• 

This mapping between linear homogeneous system of partial differential equations is an isomorphism between the differential ring and the corresponding polynomial ring (viewed as a module generated by u1,u2,...,uk ).

• 

These functions are part of the PolynomialTools package, and so they can be used in the form PolynomialToPDE(..) only after executing the command with(PolynomialTools). However, they can always be accessed through the long form of the command by using PolynomialTools[PolynomialToPDE](..).

Examples

withPolynomialTools:

SPolynomialToPDEx22x+1u+x3v,x,u,v

S:=ⅆ3ⅆx3vx+ⅆ2ⅆx2ux2ⅆⅆxux+ux

(1)

So xu>u'x and x3v>v'''x, and the inverse map is given by the following.

PDEToPolynomialS,x,u,v

x22x+1u+x3v

(2)

If there is only one dependent variable, then it is omitted in the polynomial by default.

PDEToPolynomial22yxux,y+aux,y,x,y,u,PolynomialToPDE2xy+a,x,y,u

2xy+a,22yxux,y+aux,y

(3)

The following is a computation of a Groebner Basis:

Wx22xz+5,xy2+yz3,3y28z3:

Groebner[Basis]W,tdegx,y,z

x22xz+5,8z33y2,8xy2+3y3,9y4+48y3z+320y2

(4)

The same calculation, but by mapping to a PDE, then using DEtools[rifsimp], then mapping back to polynomials:

DWPolynomialToPDEW,x,y,z,u:RDWDEtools[rifsimp]DW:

PDEToPolynomialRDWSolved,x,y,z,u

19y29y2+48yz+320,18y28x+3y,z338y2,x22xz+5

(5)

Computation of a Differential Groebner Basis for a differential system by converting it to a module:

Sxξ1x,y,z+yξ2x,y,z,yξ1x,y,zxξ2x,y,z,zξ1x,y,zxξ3x,y,z,yξ3x,y,zzξ2x,y,z,zξ3x,y,z+yξ2x,y,z,2y2ηx,y,z+2x2ηx,y,z+2z2ηx,y,z,2y2ξ2x,y,z2x2ξ2x,y,z+2yηx,y,z2z2ξ2x,y,z,2x2ξ3x,y,z2y2ξ3x,y,z2z2ξ3x,y,z+2zηx,y,z,2z2ξ1x,y,z+2xηx,y,z2y2ξ1x,y,z2x2ξ1x,y,z:

withOre_algebra:

PSPDEToPolynomialS,x,y,z,ξ1,ξ2,ξ3,η

PS:=xξ1+ξ2y,xξ2ξ1y,xξ3ξ1z,ξ2zξ3y,ξ2yξ3z,ηx2+y2+z2,x2y2z2ξ2+2ηy,x2y2z2ξ3+2ηz,x2y2z2ξ1+2ηx

(6)

AOre_algebra[poly_algebra]x,y,z,ξ1,ξ2,ξ3,η:

TGroebner[MonomialOrder]A,lexdegη,ξ3,ξ2,ξ1,z,x,y,η,ξ3,ξ2,ξ1:

GSGGroebner[Basis]PS,T

GSG:=ξ1yz,x2ξ1+ξ1y2,ξ1y2+ξ1z2,ξ1y3,xξ1y2,xξ1+ξ2y,xξ2+ξ1y,xξ1y+ξ2z2,ξ2z+ξ3y,xξ3+ξ1z,xξ1+ξ3z,xξ1y+2ηy,ξ1y2+2ηx,xξ1z+2ηz

(7)

In terms of the PDEs, this basis is:

PolynomialToPDEGSG,x,y,z,ξ1,ξ2,ξ3,η

2zyξ1x,y,z,2x2ξ1x,y,z+2y2ξ1x,y,z,2y2ξ1x,y,z+2z2ξ1x,y,z,3y3ξ1x,y,z,3y2xξ1x,y,z,xξ1x,y,z+yξ2x,y,z,xξ2x,y,z+yξ1x,y,z,2yxξ1x,y,z+2z2ξ2x,y,z,zξ2x,y,z+yξ3x,y,z,xξ3x,y,z+zξ1x,y,z,xξ1x,y,z+zξ3x,y,z,2yxξ1x,y,z+2yηx,y,z,2y2ξ1x,y,z+2xηx,y,z,2zxξ1x,y,z+2zηx,y,z

(8)

The following calculation illustrates the equivalence between the differential and the polynomial calculations calculated directly:

RSDEtools[rifsimp]S,η,ξ3,ξ2,ξ1

RS:=tableSolved=2x2ηx,y,z=0,2yxηx,y,z=0,2zxηx,y,z=0,2y2ηx,y,z=0,2y2ξ1x,y,z=2xηx,y,z,2zyηx,y,z=0,2zyξ1x,y,z=0,2z2ηx,y,z=0,2z2ξ3x,y,z=2zηx,y,z,2z2ξ2x,y,z=2yηx,y,z,2z2ξ1x,y,z=2xηx,y,z,xξ3x,y,z=zξ1x,y,z,xξ2x,y,z=yξ1x,y,z,xξ1x,y,z=zξ3x,y,z,yξ3x,y,z=zξ2x,y,z,yξ2x,y,z=zξ3x,y,z

(9)

Find the values of b and c such that the following system of polynomials has nontrivial solutions.

sysu+av+a2w,u+bv+b2w,u+cv+c2w,u+cv+c2+c2w:

DsysPolynomialToPDEsys,a,u,v,w:

RDsysDEtools[rifsimp]Dsys,casesplit

RDsys:=table1=tableCase=cb0,va,c20,wa,Pivots=cb0,c20,Solved=ua=0,va=0,wa=0,2=tableCase=cb0,va,c2=0,wa,Pivots=2b0,Solved=ⅆ2ⅆa2wa=2bwa+2ⅆⅆawa+ⅆⅆawab,ua=2bwa,va=wa2+b,c=2,3=tableCase=cb=0,va,c20,wa,Pivots=c20,Solved=ⅆⅆava=cva,ua=cva,wa=0,b=c,4=tableCase=cb=0,va,c2=0,wa,Solved=ⅆ2ⅆa2wa=ⅆⅆava+4wa+2va,ua=4wa2va,b=2,c=2,casecount=4

(10)

See Also

DEtools[caseplot]

DEtools[rifsimp]

DifferentialAlgebra

Groebner/Groebner_bases_for_modules

polynomial

 


Download Help Document

Was this information helpful?



Please add your Comment (Optional)
E-mail Address (Optional)
What is ? This question helps us to combat spam