Maxima 5.20 change log
Compiled 2009-12-13
Thanks to Dieter Kaiser for most of this text
Backwards-incompatible changes:
* removed package jtroot3 (superseded by bfallroots)
* internal symbols of specint replaced by more descriptive names:
%f --> hypergeometric
%e --> elliptic_ec
%kelliptic --> elliptic_kc
%p[a,b,c] --> jacobi_p
%p[a,b] --> assoc_legendre_p
%p[a] --> legendre_p
%q[a,b] --> assoc_legendre_q
%q[a] --> legendre_q
hstruve --> struve_h
lstruve --> struve_l
%d --> parabolic_cylinder_d
%m --> whittaker_m
%w --> whittaker_w
%ei --> expintegral_ei
%h[n,x] --> hankel_1 and hankel_2
%he --> hermite
New items in core:
* general mechanism for functions to distribute over operators
(distribute_over declaration)
Other revisions:
* improved Laplace transforms of special functions
* assume database:
The inferences between the declarations of variables as integer,
real, complex, .. have been cut out. The constant %i is declared
to be imaginary. The constants %pi, %e, %gamma, %phi are declared
to be real.
The database handles expressions with constants more completely.
Facts like assume(x < %pi/2) are now handled correctly.
The sign of sums of constant expressions is determined more
correctly.
Askinteger take into account more facts from the database.
* improvements of special functions:
More functionality for the Hankel 1 and 2 functions:
Expansion for a half integral order has been implemented.
More consistent numerical evaluation of Bessel and Hankel functions.
More general integrals for Bessel functions and implementation of
integrals for the Airy functions.
Gamma function accepts a Taylor expansion as an argument.
Implementation of Struve H and L functions:
Numerical evaluation for real and complex numbers in float and
bigfloat precision. Handling of specific values. Derivatives of the
functions and expansion for a half integral order is implemented.
Adding mirror symmetry for the Airy functions.
Improving the limits of the log and factorial functions.
* package fft: revised for greater speed
* package to_poly_solver: improvements
* regularize error and warning messages, and translate via gettext (ongoing)
* bug fixes and other improvements in plotting code
* bug fixes in translator
Bug fixes:
2906049: integration failure with option integrate_use_rootsof :true
2901855: limit(sqrt(x),x,minf) not fully evaluated
2886564: conjugate(atan2(y,x)) not simplified
2882408: solve_rat_ineq returns false answers
2876387: ode2 asks if sqrt(3) is an integer
2876284: nicedummies of subscripted
2876277: hgfred([3/2,-2],[5/2],-x) not fully simplified
2873057: incorrect version is reported in manual front page
2872605: abs_integrate bug
2872505: Assume database inconsistent after reset()
2847387: hgfred([3/2,-b],[5/2],-1) bogus
2843705: limit of psi[i]
2842198: next_prime speed improvement
2842060: unsimplified result from integrate
2841504: Limit of the factorial function - 4 problems
2840566: defint fails to determine if one of its limit is real
2836339: unsimplified negation
2835634: logcontract broken
2835098: SIGN-PREP strangeness
2834336: ratsimp vs facsum
2824360: missing bug reporting node in manual's detailed menu
2808568: Reserved words that aren't reserved
2802006: integrate(1/(sqrt(x)+1), x, 0, 1);
2770575: rtestsum test 226
2636628: solve_rat_ineq doesnt find all soloutions
2609426: integrate(cos(a)/sqrt((tan(a))^2+1), a,-%pi/2,%pi/2);
2148461: docs for factor refer to "the field of integers"
2018842: unsimplified result from jacobi_p
1977146: radexpand does not work as explained in documentation
1725951: unsimplified boolean
1646397: listofvars includes true
1551310: mod and floor should distribute over matrix and list
1038624: askinteger ignores asksign database
840360: qunit(4) internal errors
831163: part(x) should give warning
816797: limit(%i*log(a),a,0) nounform (%i*und problem)
788892: zeroa handled inconsistently
752067: Can't untrace ?meval
706455: Should powerseries do Laurent expansions?
652470: Pickapart error (due to MEMSIMILAR)
640332: Need to specdisrep more systematically
627759: Ratdisrep of aggregates