Maple Professional
Maple Academic
Maple Student Edition
Maple Personal Edition
Maple Player
Maple Player for iPad
MapleSim Professional
MapleSim Academic
Maple T.A. - Testing & Assessment
Maple T.A. MAA Placement Test Suite
Möbius - Online Courseware
Machine Design / Industrial Automation
Aerospace
Vehicle Engineering
Robotics
Power Industries
System Simulation and Analysis
Model development for HIL
Plant Modeling for Control Design
Robotics/Motion Control/Mechatronics
Other Application Areas
Mathematics Education
Engineering Education
High Schools & Two-Year Colleges
Testing & Assessment
Students
Financial Modeling
Operations Research
High Performance Computing
Physics
Live Webinars
Recorded Webinars
Upcoming Events
MaplePrimes
Maplesoft Blog
Maplesoft Membership
Maple Ambassador Program
MapleCloud
Technical Whitepapers
E-Mail Newsletters
Maple Books
Math Matters
Application Center
MapleSim Model Gallery
User Case Studies
Exploring Engineering Fundamentals
Teaching Concepts with Maple
Maplesoft Welcome Center
Teacher Resource Center
Student Help Center
Compatibility Issues in Maple 7
The following is a brief description of the compatibility issues that affect users upgrading from Maple 6 to Maple 7.
Obsolete Packages and Functions
The interp, ratinterp, thiele and spline functions are obsolete. The functionality of these functions is now provided by the CurveFitting[PolynomialInterpolation], CurveFitting[RationalInterpolation], CurveFitting[ThieleInterpolation] and CurveFitting[Spline] functions, respectively.
The record constructor has been renamed Record for consistency with other, similar constructors. For this release, the name record will continue to work, but is now deprecated in favor of the new spelling.
Numerics-related Changes
By default, in the exact computation environment (i.e., no floating-point numbers or computations involved) the numeric events overflow and underflow cause the corresponding exception to be raised rather than an infinity or 0 to be returned. This is similar to the Maple 6 behavior for the division_by_zero numeric event, and as with that event, this behavior can be controlled by installing a numeric event handler. See NumericEvent and NumericEventHandler.
The UseHardwareFloats environment variable, which was Boolean valued (i.e., took only the values true or false) in Maple 6, now allows a third value, deduced, which is also the new default value. When UseHardwareFloats = deduced, hardware or software floats will be used for certain computations depending on whether the value of the environment variable Digits is less than evalhf(Digits).
The semantics of undefined have been slightly changed in order to deal with certain loop termination conditions. In particular, undefined = undefined returns true.
For details on these and other changes to Maple's numerics, see updates,Maple7,numerics.
New Keywords and Names
assuming, subset, implies, and xor are new Maple operator keywords.
Miscellaneous
The MeijerG function of Maple 6 was using a nonstandard definition of this function. As of Maple 7, this function now has a much more standard definition; Maple 6's variation of the function is still present in Maple 7, but under the name ModifiedMeijerG. See MeijerG for additional details.
The one-argument form of the save command, e.g., , is obsolete. The list of names to save must now be given explicitly.
The behavior of codegen[maple2intrep], codegen[C], and codegen[fortran] has changed. If these functions are used to translate a procedure f which calls another procedure g, then they can determine the return type of g accurately only if the return type of g is declared; otherwise, a default return type of float is assumed.
The codegen[C] function now generates standard math library function names in all cases, even when the precision=single option is provided. The new mode=single option must be used to generate single precision math function names such as ``logf''.
The codegen[fortran] function now produces generic math function names and double precision variables and constants as defaults.
The LinearAlgebra[LinearSolve] function now accepts an additional argument of the form . This argument must be provided when the programming layer routine, LinearAlgebra:-LA_Main:-LinearSolve, is used. See Linear Algebra Programming Submodule Calling Sequences.
To extend the size of factorials that can be computed, factorials are no longer evaluated at ``compile-time'' (during automatic simplification), and there is no longer any (practical) limit on the size of an integer argument to factorial. This change means that you can now delay factorial computations by using unevaluation quotes. Substituting into an unevaluated factorial expression now requires an evaluation to effect the computation. Small factorials are still computed in the kernel, but the built-in procedure factorial now calls a new library procedure Factorial to handle arguments that are not small integers.
'20!';
subs( n = 5, 'n!' );
length( 40000! ); # not possible in earlier releases of Maple
X11 resources on UNIX systems start with Maple 7.
No updtsrc Utility in Maple 7
There are no incompatibilities between the syntax of Maple 6 and Maple 7. Therefore, the updtsrc utility is not required for this release. For help porting code files from Maple versions prior to Maple 6 to Maple 7, please visit the Support section of our Web site, www.maplesoft.com.
Download Help Document