This tutorial shows how to use Maple both as a calculator with instant access to hundreds of high-level math routines and as a programming language for more demanding tasks. It covers topics such as the basic data types and statements in the Maple language. It explains the differences between numeric computation and symbolic computation and illustrates how both are used in Maple. Extensive "how-to" examples are used throughout the tutorial to show how common types of calculations can be expressed easily in Maple. The manual also uses many graphics examples to illustrate the way in which 2D and 3D graphics can aid in understanding the behavior of functions.
Inhalt
One Interactive Use of Maple.- 1.1 The user interface and the computational engine.- 1.2 Getting started.- 1.3 Starting a Maple session: how Maple behaves interactively.- 1.4 Simple arithmetic in Maple.- 1.5 Fixing mistakes.- 1.6 help yourself to more of Maple.- 1.7 Parentheses and the priority of arithmetic operations.- 1.8 Ending a Maple session.- 1.9 Maple variables.- 1.10 Built-in commands for mathematical computation.- 1.11 Introducing Maple's mathematical commands.- 1.11.1 Solution of algebraic equations.- 1.11.2 Expression substitution with subs.- 1.12 Using Maple as a numerical calculator.- 1.12.1 Numerical calculations to any desired precision.- 1.12.2 Numerical solution of equations.- 1.13 Graphing and plotting functions on screen and on paper.- 1.13.1 Graphing simple functions.- 1.13.2 Printing plots on PostScript, Imagen, and LN03 printers.- 1.13.3 Plot set-up for graphics terminals and displays.- 1.13.4 Creating graphs for other picture processing programs.- 1.14 More about syntax errors.- 1.15 You ask too much! (Run-time errors).- 1.16 Interrupting a Maple computation.- 1.17 Printing values: print and lprint.- 1.18 Defining simple functions in Maple.- 1.19 Automatic simplification.- 1.20 Simplifying expressions with simplify.- 1.21 Maple's commands for calculus.- 1.21.1 Differentiation.- 1.21.2 Indefinite and definite integration.- 1.21.3 Solving differential equations with dsolve.- 1.21.4 Power series.- 1.21.5 Limits of real and complex functions.- 1.22 Computing sums.- 1.23 Solving recurrence relations with rsolve.- 1.24 Other commands for solving, and other mathematical functions.- Two Less Simple Maple.- 2.1 A few words to experienced programmers.- 2.2 Programming variables and mathematical symbols.- 2.3 More on simplification: specialized simplification commands.- 2.3.1 Expanding products and functional arguments.- 2.3.2 combine: merging terms of an expression.- 2.3.3 normal: simplifying rational functions with finesse.- 2.3.4 collect: organizing an expression with respect to a main variable.- 2.3.5 Ordering terms with sort.- 2.3.6 converting between functional forms.- 2.3.7 Factoring polynomial expressions.- 2.4 Full and delayed evaluation.- 2.5 Quotation and unevaluation.- 2.6 Using quoted variables as function arguments.- 2.7 Concatenation - forming new names from old.- 2.8 Looking at parts of expressions - op, nops, coeff.- 2.9 Expression sequences, sets, and lists.- 2.9.1 Expression sequences.- 2.9.2 Sets and lists.- 2.10 Tables and arrays - indexed collections of data.- 2.10.1 Tables.- 2.10.2 Arrays.- 2.10.3 Sparse, symmetric and other special indexing schemes for Maple arrays and tables.- 2.10.4 What's in a table or array: indices and entries.- 2.11 Converting from one structure to another.- 2.12 The map function: performing the same operation on all elements of a data structure.- 2.13 Linear algebra in Maple.- 2.13.1 Simple matrix and vector calculations with evalm.- 2.13.2 The linalg linear algebra package and with.- 2.13.3 linaig procedures for vector spaces.- 2.13.4 Differentiation applied to matrices and vectors.- 2.13.5 Structural operations on matrices and vectors.- 2.13.6 Invoking specific functions from a package without with.- 2.14 alias for changing the names of built-in functions and mathematical symbols.- 2.15 Saving the state of your Maple session.- 2.16 Recording results in files in human-readable format.- 2.16.1 writeto and appendto: Maple session output to a file.- 2.16.2 Creating a transcript of a Maple session.- 2.17 Access to additional library procedures.- 2.18 Other formats for output: fortran, latex, and eqn.- 2.18.1 Writing expressions for Fortran and C programs.- 2.18.2 Output formatted for IaTEX and eqn.- Three The Maple Programming Language.- 3.1 Repetition while you wait.- 3.2 Repetition for each one.- 3.3 Conditional execution with if-then-else-fi.- 3.4 break and next: control within for-while loops.- 3.5 Simple Maple procedures.- 3.6 Maple procedures - multiple statements, local variables, RETURN.- 3.7 Using error - exiting several procedures at once.- 3.8 Checking types: writing safer programs.- 3.9 Nested types and structured types.- 3.10 Remembering function values.- 3.11 Functional operators.- 3.12 Packages in Maple.- 3.13 Your Maple initialization file.- 3.14 Creating help for your procedures.- 3.15 Creating your own library.- 3.16 Creating and debugging Maple programs.- 3.16.1 mint, the Maple diagnostician.- 3.16.2 trace and printievel, program tracing tools.- 3.17 Viewing Maple library source code.- 3.18 Calling Maple from programs written in other languages.- Four Advanced Graphics.- 4.1 More on plot.- 4.1.1 How plot works: adaptive plotting and smooth curves.- 4.1.2 Using titles, lines, and points in your plot.- 4.1.3 Plotting from a list of data values.- 4.1.4 The plot data structure; saving plots into files.- 4.1.5 Combining plots and zooming in with display.- 4.1.6 Two-dimensional parameterized plots.- 4.1.7 Two-dimensional plots using polar coordinates.- 4.1.8 Conformal maps.- 4.1.9 A plotting example: a Maple program for simple histograms.- 4.2 Plotting in three dimensions: graphing surfaces.- 4.2.1 Viewing 3D plots: options to 3D plot commands.- 4.2.2 Viewing position.- 4.2.3 Viewing boundaries.- 4.2.4 Axes scaling.- 4.2.5 3D plot styles.- 4.2.6 Other varieties of three-dimensional plotting.- 4.3 Plotting functional expressions with plot and plot3d.- Five Measuring and improving performance.- 5.1 Monitoring time and space consumed during a computation.- 5.2 Garbage collection and gc.- 5.3 Querying the state of the system through status.- 5.4 Profiling the performance of Maple programs.- 5.5 Using option remember to improve performance.- 5.6 Faster floating-point computation.- 5.6.1 Maple's hardware floating-point arithmetic is faster than evalf.- 5.6.2 evalhf uses hardware floating-point arithmetic.- 5.6.3 Taking advantage of evaihf in your Maple programming.- 5.6.4 evaihf is still slower than compiled floating-point programs.- Six Advanced Examples.- 6.1 Introduction.- 6.2 Balancing chemical reactions.- 6.3 Maxwell's formula for the velocity of a gas sample.- 6.4 Critical length of a rod.- 6.5 Zeros of Bessel functions.- 6.6 Stock market analysis through linear algebra.- 6.7 Primitive trinomials.- 6.8 Computations on the 3n +1 conjecture.- 6.9 A numerical approximation problem.- 6.9.1 Transforming to a function f(x) which is nonzero on [0,4].- 6.9.2 Approximations derived from Taylor series.- 6.9.3 Approximations derived from Chebyshev series.- 6.10 Reading more about Maple problem-solving techniques.- Seven Global access to Maple information.- 7.1 New users' problems.- 7.2 The community of Maple users.- 7.3 What to do when the answer seems wrong.- 7.4 Electronic access to user-contributed Maple software.- 7.4.1 Information and programs via "netlib".- 7.4.2 Access to Maple programs via ftp.- 7.5 Maple publications.- Conclusion.- A Bibliography.- B Books and articles for Maple users.- B.1 Some books for Maple users.- B.2 Some research articles on Maple and its usage.