Advanced Math - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

Online Help

All Products    Maple    MapleSim


Advanced Mathematics

Maple 2021 includes numerous cutting-edge updates in a variety of branches of mathematics.

 

 

Integration

Multivariate limits

New MultivariatePowerSeries package

New simplifications involving the LambertW function

Numerical solution of vectorized ODEs

Polyhedral sets

Asymptotic expansions

GF package

Additions to the intsolve command

LREtools

Generic linear algebra

Integration

The int command now supports the method option for indefinite integrals. Methods include Risch, MeijerG, Elliptic, Norman and Trager. More methods and details can be found on the help page.

intcosx+1,x,method=meijerg_raw

cos1xhypergeom,32,x24sin1x2hypergeom1,32,2,x242

(1.1)

intcosx+1,x,method=risch

sinx+1

(1.2)

Additionally, the new meta-method _RETURNVERBOSE has been added for both definite and indefinite integration. It returns the result of integration for most of the available integration methods.

intcosx+1,x,method=_RETURNVERBOSE

derivativedivides=sinx+1,default=sinx+1,norman=2tanx2+121+tanx2+122,meijerg=cos1sinxsin1π1πcosxπ,risch=sinx+1,FAILS=gosper,lookup,trager,elliptic

(1.3)

int1t2+12t2+1,t=0..1,method=_RETURNVERBOSE

ftoc=EllipticK2,elliptic=I2EllipticK222+2EllipticK222,ftocms=EllipticK2,FAILS=distribution,piecewise,series,o,polynomial,ln,lookup,cook,ratpoly,elliptictrig,meijergspecial,improper,asymptotic,meijerg,contour

(1.4)

The internal algorithms of indefinite integration have been improved. The Risch-Trager algorithm gets called more often so that fewer integrals containing radical expressions will return partially evaluated. In Maple 2020, the integral 3 x5+2x5+x21x512 ⅆx returned as xx5+x21x51+3x5+22x51x5+x21ⅆx.
Now, an elementary answer is computed. 

2+3x51+x2+x5121+x52ⅆx

xx5+x21x51+lnx5+2x5+x21x2x2+1x1x4+x3+x2+x+12

(1.5)

Multivariate limits

The limit command has been improved for the multivariate case of quotients of analytic functions. The following limits can now be computed.

g  x2xy+y2+z4:

g is not homogeneous but has an isolated root at the origin. It is, however, weighted homogeneous.

PolynomialTools:-IsHomogeneousg

false

(2.1)

PolynomialTools:-IsHomogeneousg,x,y,z,2,2,1

true

(2.2)

RCRegularChains: RRC:-PolynomialRingx,y,z:RC:-DisplayRC:-RealTriangularizeg,R,R

x=0y=0z=0

(2.3)

limitxyzg,x,y,z=~0

0

(2.4)

limitg+xyzg+xy3yz3,x,y,z=~0

1

(2.5)

limitg+xz2g+yz2,x,y,z=~0

undefined

(2.6)

limitsinx+y+z2g,x,y,z=~0

undefined

(2.7)

limitgxz24,x,y,z=~0

(2.8)

 

New MultivariatePowerSeries package

The MultivariatePowerSeries package is new. It provides functionality for doing lazy computations with multivariate power series at high speed and high precision. The word 'lazy' here means that terms are computed only when necessary; further terms can always be computed at relatively little cost.

withMultivariatePowerSeries;

Add,ApproximatelyEqual,ApproximatelyZero,Copy,Degree,Display,Divide,EvaluateAtOrigin,Exponentiate,GeometricSeries,GetAnalyticExpression,GetCoefficient,HenselFactorize,HomogeneousPart,Inverse,IsUnit,MainVariable,Multiply,Negate,PowerSeries,Precision,SetDefaultDisplayStyle,SetDisplayStyle,Subtract,SumOfAllMonomials,TaylorShift,Truncate,UnivariatePolynomialOverPowerSeries,UpdatePrecision,Variables,WeierstrassPreparation

(3.1)

a  GeometricSeriesx, y

aPowⅇrSⅇrⅈⅇs of 11xy : 1+x+y+

(3.2)

b  SumOfAllMonomialsx, y

bPowⅇrSⅇrⅈⅇs of 11x1y : 1+x+y+

(3.3)

c  a  b

cPowⅇrSⅇrⅈⅇs of 11xy11x1y : 0+

(3.4)

CodeTools:-UsageHomogeneousPartc, 100

99x99y+4949x98y2+161699x97y3+3921224x96y4+75287519x95y5+1192052399x94y6+16007560799x93y7+186087894299x92y8+1902231808399x91y9+17310309456439x90y10+141629804643599x89y11+1050421051106699x88y12+7110542499799199x87y13+44186942677323599x86y14+253338471349988639x85y15+1345860629046814649x84y16+6650134872937201799x83y17+30664510802988208299x82y18+132341572939212267399x81y19+535983370403809682969x80y20+2041841411062132125599x79y21+7332066885177656269199x78y22+24865270306254660391199x77y23+79776075565900368755099x76y24+242519269720337121015503x75y25+699574816500972464467799x74y26+1917353200780443050763599x73y27+4998813702034726525205099x72y28+12410847811948286545336799x71y29+29372339821610944823963759x70y30+66324638306863423796047199x69y31+143012501349174257560226774x68y32+294692427022540894366527899x67y33+580717429720889409486981449x66y34+1095067153187962886461165019x65y35+1977204582144932989443770174x64y36+3420029547493938143902737599x63y37+5670048986634686922786117599x62y38+9013924030034630492634340799x61y39+13746234145802811501267369719x60y40+20116440213369968050635175199x59y41+28258808871162574166368460399x58y42+38116532895986727945334202399x57y43+49378235797073715747364762199x56y44+61448471214136179596720592959x55y45+73470998190814997343905056799x54y46+84413487283064039501507937599x53y47+93206558875049876949581681099x52y48+98913082887808032681188722799x51y49+100891344545564193334812497255x50y50+98913082887808032681188722799x49y51+93206558875049876949581681099x48y52+84413487283064039501507937599x47y53+73470998190814997343905056799x46y54+61448471214136179596720592959x45y55+49378235797073715747364762199x44y56+38116532895986727945334202399x43y57+28258808871162574166368460399x42y58+20116440213369968050635175199x41y59+13746234145802811501267369719x40y60+9013924030034630492634340799x39y61+5670048986634686922786117599x38y62+3420029547493938143902737599x37y63+1977204582144932989443770174x36y64+1095067153187962886461165019x35y65+580717429720889409486981449x34y66+294692427022540894366527899x33y67+143012501349174257560226774x32y68+66324638306863423796047199x31y69+29372339821610944823963759x30y70+12410847811948286545336799x29y71+4998813702034726525205099x28y72+1917353200780443050763599x27y73+699574816500972464467799x26y74+242519269720337121015503x25y75+79776075565900368755099x24y76+24865270306254660391199x23y77+7332066885177656269199x22y78+2041841411062132125599x21y79+535983370403809682969x20y80+132341572939212267399x19y81+30664510802988208299x18y82+6650134872937201799x17y83+1345860629046814649x16y84+253338471349988639x15y85+44186942677323599x14y86+7110542499799199x13y87+1050421051106699x12y88+141629804643599x11y89+17310309456439x10y90+1902231808399x9y91+186087894299x8y92+16007560799x7y93+1192052399x6y94+75287519x5y95+3921224x4y96+161699x3y97+4949x2y98+99xy99

(3.5)

d  PowerSeriesn  x+ynn!,analytic = expx+y

dPowⅇrSⅇrⅈⅇs of ⅇx+y : 1+

(3.6)

e  PowerSeriesn  ifelsen  even, 0, 1n12 xnn!, analytic=sinx

ePowⅇrSⅇrⅈⅇs of sinx : 0+

(3.7)

The package also has functionality for univariate polynomials over such power series, including Hensel factorization. Mathematically, these objects are just power series where one of the variables occurs only up to a given finite degree, but implementation-wise, they allow for more and more efficient functionality.

u  UnivariatePolynomialOverPowerSeries4 d + e z  3 a z2 + z3, z

uUnⅈvarⅈatⅇPolynomⅈalOvⅇrPowⅇrSⅇrⅈⅇs: 4++0+z+−3+z2+1z3

(3.8)

factorization  HenselFactorizeu;

factorizationUnⅈvarⅈatⅇPolynomⅈalOvⅇrPowⅇrSⅇrⅈⅇs: 1++1z,UnⅈvarⅈatⅇPolynomⅈalOvⅇrPowⅇrSⅇrⅈⅇs: 4++−4+z+1z2

(3.9)

u1, u2  opfactorization:

Let us examine the coefficients of the quadratic factor further.

UpdatePrecisionu2, 10:

Displayu2, maxterms=20

UnⅈvarⅈatⅇPolynomⅈalOvⅇrPowⅇrSⅇrⅈⅇs: 4+4x+32y9+22x29+388xy81+578y2243+140x381+3968x2y729+3974xy2729+11876y36561+2291x41458+41530x3y6561+62197x2y26561+124138xy319683+185939y4118098+47494x532805+424718x4y59049+2546836x3y2177147+7642522x2y3531441+22924393xy43188646+++

(3.10)

New simplifications involving the LambertW function

Before Maple 2021, the following calls to the simplify command returned their arguments unchanged, or with minor changes that left a call to LambertW in the answer.

simplifyW 5 24 ln44

5ln24

(4.1)

simplifyW261767339628394714151429379115ln1439265100944259205

2ln2135+2ln71352ln3135

(4.2)

simplifyW1,34  ln4343

4ln38ln2

(4.3)

simplifyW1, 5104 ln135 1338 558

13ln138+13ln58

(4.4)

 simplifyW528309168976 ln94 2311010561 3745110561

39134ln31056139134ln210561

(4.5)

Numerical solution of vectorized ODEs

You can now numerically solve differential equations that are collected together in vectors.

dEqsⅆⅆtA__1tⅆⅆtA__2t=B__1tB__2t,ⅆⅆtB__1tⅆⅆtB__2t=1.2A__1t2.3A__2t:

InEqsA__10A__20=1.10.3,B__10B__20=00:

sol  dsolvedEqs, InEqs,numeric

solprocx_rkf45...end proc

(5.1)

plots:-odeplotsol,t,A__1t,t,A__2t,t,B__1t,t,B__2t,0..5,legend=A__1t,A__2t,B__1t,B__2t

Polyhedral sets

A new and faster algorithm that checks for redundant constraints is available for the Project command in the PolyhedralSets package. The following example now runs about 4 times faster:

withPolyhedralSets

AffineHull,Area,CharacteristicCone,ConvexHull,Coordinates,Dimension,Display,DualSet,Edges,Equal,ExampleSets,Faces,Facets,Graph,ID,InteriorPoint,IsBounded,IsEmpty,IsFace,IsInInterior,IsUniversalSet,Length,LinearTransformation,LinearitySpace,LocatePoint,Plot,PolyhedralSet,PrintLevel,Project,Relations,SplitIntoSimplices,Translate,Vertices,VerticesAndRays,Volume,in,intersect,subset

(6.1)

l65 x__163x__287x__3+66x__4+10x__577,           81 x__1+x__2+6x__3+23x__492x__517,            99 x__1+43x__2+40x__366x__421x__556,        3 x__1+63x__222x__382x__4+85x__570,             37 x__164x__2+88x__3+29x__443x__598,           41 x__138x__2+66x__3+38x__428x__510,             71 x__152x__234x__3+80x__4+38x__575,             25 x__19x__25x__377x__4+99x__591,             33 x__15x__2+30x__382x__4+97x__516,             56 x__1+77x__2+48x__311x__4+60x__558:

PPolyhedralSetl

P{Coordinates:x__1,x__2,x__3,x__4,x__5Relations:x__163x__26587x__365+66x__465+2x__5137765,x__1+x__281+2x__327+23x__48192x__5811781,x__1+43x__299+40x__3992x__437x__5335699,x__1+21x__222x__3382x__43+85x__53703,x__164x__237+88x__337+29x__43743x__5379837,x__138x__241+66x__341+38x__44128x__5411041,x__152x__27134x__371+80x__471+38x__5717571,x__19x__225x__3577x__425+99x__5259125,x__15x__233+10x__31182x__433+97x__5331633,x__1+11x__28+6x__3711x__456+15x__5142928

(6.2)

CodeTools:-UsageProjectP,x__5

memory used=261.74MiB, alloc change=64.00MiB, cpu time=1.80s, real time=1.72s, gc time=187.50ms

{Coordinates:x__1,x__2,x__3,x__4,x__5Relations:x__51619079331240163204,x__4=0,x__3=0,x__2=0,x__1=0

(6.3)

Asymptotic expansions

The asympt command can now compute asymptotic expansions of the logarithmic integral:

asymptLix,x

1lnx+1lnx2+2lnx3+6lnx4+24lnx5+O1lnx6x

(7.1)

asymptLi1x,x

1lnx+1lnx22lnx3+6lnx424lnx5+O1lnx6x

(7.2)

GF package

After a finite Galois field has been constructed using the GF package, there is now an easy syntax to create new field elements:

F8GF2, 3, t3+t+1

F8𝔽8

(8.1)

aF8t2+1;bF8t2+t

at2+1mod2

bt2+tmod2

(8.2)

F8`+`a,b;F8`*`a,b

t+1mod2

t+1mod2

(8.3)

Additions to the intsolve command

The intsolve command has been updated to recognize some integral equations that contain integral transforms. For example:

unassignf,x,y

ie10fy5+sinycosxyⅆy=ⅇx

ie10fycosxy5+sinyⅆy=ⅇx

(9.1)

intsolveie1,fx

fx=25+sinxπx2+1

(9.2)

Furthermore, the method of collocation is now available to provide approximate solutions for certain types of integral equations. For example:

unassigng,k,u,v

ku&comma;vu2vu<vv2uotherwise

ku&comma;vu2vu<vv2uotherwise

(9.3)

ie2gu+02gvku&comma;v&DifferentialD;v+u2=0

ie2gu+02gvku&comma;v&DifferentialD;v+u2=0

(9.4)

intsolveie2&comma;gu&comma;method=collocation&comma;order=5

gu=187535993u5+342656254018042562u4+12400002009021281u318134126252009021281u2+11412701882009021281u

(9.5)

LREtools

The LREtools package for linear recurrence equations has been enhanced with the addition of several commands related to recurrence factorization and recognition:
GCRD, GeneralizedExponents, GuessRecurrence, LCLM, MinimalRecurrence, MultiplyOperators, OperatorToRecurrence, RecurrenceToOperator, RightDivision, RightFactors, SumDecompose

withLREtools

AnalyticityConditions&comma;GCRD&comma;GeneralizedExponents&comma;GuessRecurrence&comma;HypergeometricTerm&comma;IsDesingularizable&comma;LCLM&comma;MinimalRecurrence&comma;MultiplyOperators&comma;OperatorToRecurrence&comma;REcontent&comma;REcreate&comma;REplot&comma;REprimpart&comma;REreduceorder&comma;REtoDE&comma;REtodelta&comma;REtoproc&comma;RecurrenceToOperator&comma;RightDivision&comma;RightFactors&comma;SumDecompose&comma;ValuesAtPoint&comma;autodispersion&comma;constcoeffsol&comma;dAlembertiansols&comma;δ&comma;dispersion&comma;divconq&comma;firstlin&comma;hypergeomsols&comma;polysols&comma;ratpolysols&comma;riccati&comma;shift

(10.1)

As an example consider the well known Fibonacci sequence:

fib  procnnonnegint if n&equals;0 then 0&semi; elif n&equals;1 then 1&semi; else fibn1&plus;fibn2&semi; end if&colon; end proc&colon; vals  seqfibi&comma;i&equals;0..20&semi;

vals0&comma;1&comma;1&comma;2&comma;3&comma;5&comma;8&comma;13&comma;21&comma;34&comma;55&comma;89&comma;144&comma;233&comma;377&comma;610&comma;987&comma;1597&comma;2584&comma;4181&comma;6765

(10.2)

The GuessRecurrence command can be used to algorithmically determine the underlying recurrence under the assumption that it is holonomic:

GuessRecurrencevals&comma;Fi&comma; 0&semi;

Fi+2Fi+1Fi=0

(10.3)

Consider the following recurrence written in operator form:

_Env_LRE_tauE&colon;_Env_LRE_xx&colon;

LE33E2+3E1

LE33E2+3E1

(10.4)

We can obtain all order 1 right factors as follows:

RightFactorsL&comma;1

E1&comma;x+_Z1Ex_Z11&comma;a family of dimension&comma;1&comma;with equations&comma;&comma;x2+_Z2x+_Z1Ex2_Z2x2x_Z1_Z21&comma;a family of dimension&comma;2&comma;with equations&comma;

(10.5)

and order 2 right factors as follows.

RightFactorsL&comma;2

E22E+1&comma;x+_Z1E2+2x2_Z11E+x+_Z1+1&comma;a family of dimension&comma;1&comma;with equations&comma;&comma;x2+_Z2x+_Z1E2+2x22_Z2x2x2_Z1_Z2+1E+x2+_Z2x+2x+_Z1+_Z2+1&comma;a family of dimension&comma;2&comma;with equations&comma;

(10.6)

Generic linear algebra

Two new commands MatrixAdd and VectorAdd were added to the LinearAlgebra:-Generic package. These can be used for addition and scalar multiplication of Matrices and Vectors. See the corresponding help page for more details.