1.1 Lesson 1

```# Introduction to Maple
# ===============
#
# To start Maple (in the X-terminal lab after logging in), enter the
# following command in a terminal window:
#      xmaple&
#
# An xmaple window should appear.
# The ">" prompt indicates that Maple is ready for your command.
#
> 2+3;

5
# Note the ";", which is necessary to end a command.  After the ";" you
# should press the Return key which is above the right Shift (not the
# same as the Enter key on the numeric keypad).
# (On a Mac or NeXT computer, you need to press Enter, not Return.
# On most other computers, Enter and Return are the same)
#
# Maple prints the result and gives you another prompt.
#
> 2 + 4:
#
# This time I used ":" instead of ";".  This tells Maple to compute the
# result, but not print it.  Usually we'll use ";" since there's no reason
# not to see the result.
#
# Another difference between this and the last example is that I put in
# spaces on either side of the "+".  These spaces are ignored by Maple.
#
> 2+3*4;

14
# The multiplication sign in Maple is the asterisk *.  The division sign
# is /.  For powers we use ^.
#
# Maple uses the standard algebraic precedence rules, so 2+3*4 was
# interpreted as 2+(3*4), not (2+3)*4.
#
> 2^1000;

1071508607186267320948425049060001810561404811705533607443750388370351051124936\
1224931983788156958581275946729175531468251871452856923140435984577574698574803\
9345677748242309854210746050623711418779541821530464749835819412673987675591655\
43946077062914571196477686542167660429831652624386837205668069376
# That's something your calculator probably can't do.  Maple can
# handle very large integers.
#
# The "\" at the end of a line means that the number is continued to the
# next line.
#
> 21/39;

7/13
# It writes fractions as fractions (automatically reducing them to lowest
# terms), without resorting to decimal approximations.  If you do want
# to see this as a decimal, you can use the "evalf" command.  As with
# almost every Maple command, the input to "evalf" is enclosed in
# parentheses.
> evalf(7/13);

.5384615385
# The default (what Maple does unless otherwise specified) is to show
# 10 significant digits.  This can be changed, using a variable called
# "Digits".  Let's see this number to 25 digits instead of 10.
#
> Digits:= 25:
> evalf(7/13);

.5384615384615384615384615
# - Maple is case-sensitive.  "Digits" is not the same as "digits" or
# "DIGITS".  Those wouldn't affect the number of digits Maple prints.
# - ":=" is the assignment sign in Maple.  It means "assign the value on
# the right to the variable on the left".  This is different from "=" which
# makes an equation.
# - Once "Digits" has been set, Maple uses this setting every time it
# computes a decimal result until you change "Digits" again.  If you
# want to change the number of digits for one "evalf" command only,
# you can specify this as a second input to "evalf".  The inputs are
# separated by a comma.
#
>  evalf(7/13, 40);
#

.5384615384615384615384615384615384615385
# - In the professional editions of Maple (e.g. the one in the X lab)
# Digits can be as large as you want (until you run out of memory).  In
# student editions, the maximum is 100.
#
> Digits:= 10:
> x^2 - 3*x - 4;
#

2
x  - 3 x - 4
# The "x" here is a symbolic variable.  Maple can do algebra as well as
# arithmetic.  Note that the output looks like ordinary typeset
# mathematics, with exponents as superscripts and omitting the * for
# multiplication.
#
# Often we'll want to have Maple remember something for later use.
# This will save us from doing things over and over again.  We can
# store an expression in a variable.
#
> f:= x^2 - 3*x - 4;

2
f := x  - 3 x - 4
# I really didn't need to type the "x^2 - 3*x - 4" again.  The very useful
# symbol " stands for "the result of the last command".  So I could have
# said
#
> f:= ";

2
f := x  - 3 x - 4
# There are also "" for the second-last and """ for the third-last result
# (but that's as far back as it goes).
#
# Actually I didn't type "x^2 - 3*x - 4" again.  XWindows, just like
# Macintosh and Windows, has a copy-and-paste facility.  You select
# some text by dragging the mouse pointer across it, and press the
# middle mouse button to paste it.
#
# Let's solve an equation.
#
> solve(f=0,x);

4, -1
# This command told Maple to solve the equation x^2 - 3*x - 4 = 0
# (since the value of the variable f is x^2 - 3*x - 4) for x.  Since there's
# only one variable in the equation, we didn't really need to specify the
# "x": we could have used "solve(f=0)".  In fact we could have used
# "solve(f)", because "solve"  automatically interprets an expression
# that is not an equation as "expression = 0".  There are two solutions,
# x = 4 and x = -1, and Maple gives us both, separated by a comma.
# "solve" will return all the solutions of a polynomial equation.
#
> solve(x^4 - x^2*y + y^2/4 = 0, x);

1/2  1/2         1/2  1/2       1/2  1/2         1/2  1/2
1/2 2    y   , - 1/2 2    y   , 1/2 2    y   , - 1/2 2    y
# We needed the "x" in this one because there were two possible
# variables, x and y.  Note that the double roots are given twice.
#
> solve(x^3 - x - 1, x);

1/3      1             1/3      1             1/2 /  1/3      1   \
%1    + -------, - 1/2 %1    - ------- + 1/2 I 3    |%1    - -------|,
1/3                    1/3              |            1/3|
3 %1                   6 %1                 \        3 %1   /

1/3      1             1/2 /  1/3      1   \
- 1/2 %1    - ------- - 1/2 I 3    |%1    - -------|
1/3              |            1/3|
6 %1                 \        3 %1   /

1/2
%1 :=                          1/2 + 1/18 69
# There are three solutions here (the commas are sometimes hard to
# spot).  "I" is Maple's notation for the square root of -1.  Maple often
# writes complicated expressions by introducing variables %1, %2 etc.
# which stand for parts of the expression that occur in more than one
# place.  Let's save this result.
#
> s:= ":

# You can pick out individual solutions as s[1], s[2], and s[3].
#
> s[2];

1/3      1             1/2 /  1/3      1   \
- 1/2 %1    - ------- + 1/2 I 3    |%1    - -------|
1/3              |            1/3|
6 %1                 \        3 %1   /

1/2
%1 :=                          1/2 + 1/18 69
> evalf(");

- .6623589787 + .5622795120 I
# Here's one that Maple won't produce a "closed-form" solution for:
#
> solve(x^5 - x^3 + 2*x + 1, x);

5     3
RootOf(_Z  - _Z  + 2 _Z + 1)
# There's a good reason for that: in general, polynomials of degree 5
# and higher can't be solved in terms of radicals.  What about
# non-polynomial equations?
#
> solve(sin(x) = 1/2, x);

1/6 Pi
# Yes, that's one solution, but it's certainly not the only one.  Let's try
# some harder equations.
#
> solve(sin(x)=1-x, x);

> solve(exp(x)=y-x, x);

- W(exp(y)) + y
# Maple had no luck with the first one.  Rather surprisingly, it did find a
# solution for the second.
# Note the use of "exp" for the exponential function.
# Maple's output shows it almost as if it were e^x, but actually there is
# a subtle difference if you see them together.

> e^x , exp(x);

x
e , exp(x)
# The "e" of e^x is in an italic font that Maple uses for variables, while
# the "e" of exp(x) is in a Roman font that is used for functions.  The
# letter "e" is just an ordinary variable as far as Maple is concerned.
# The constant 2.71828... is E.  (Actually, in the next release of Maple,
# E won't be anything special either, so it's best to use exp.)
#
> evalf(e), evalf(E);

e, 2.718281828
# Now back to W. What is it?  This may be a good place to introduce
# Maple's help facility.  To find out about any Maple command or
#
> ?W

# No ";" is needed for help.  The help page comes up in its own window
# on the X terminal.
#
# FUNCTION: W - Lambert's W function
#
# CALLING SEQUENCE:
#    W(x)
#    W(k, x)
#
# PARAMETERS:
#    x - an expression
#    k - an expression, understood to be an integer
#
# SYNOPSIS:
# - Lambert's W function satisfies
#
#       W(x) * exp(W(x)) = x .
#
# - As the equation y exp(y) = x has an infinite number of solutions y
# for each (non-0) value of x, W has an infinite number of branches.
# Exactly one of these branches is analytic at 0.  In Maple this branch is
# referred to as the principal branch of W, and is denoted by W(x).  The
# other branches all have a branch point at 0, and these branches are
# denoted in Maple by W(k,x), where k is any non-zero integer.  (The
# principal branch can also be referred to as W(0,x)).
#  etc....
#
# Well, a lot of this might not make much sense to you until Math 301,
# but when you want it, it's there.  The most useful parts of the help
# page are often the "calling sequence" and "parameters", which tell
# you the number and types of inputs to use for a command or function,
# the "examples" section at the end which often shows it being used in
# just the way you want to use it, and the "see also" right at the end (if
# the command you asked about is not quite what you need, the one
# you do need may well be mentioned there).
#
# Anyway, W is a certain function that Maple knows about, that can be
# used to solve many equations involving exponentials or logarithms.
#
# But what about those equations that "solve" can't handle?  They will
# be taken care
# of by "fsolve" (in the next lesson...)

```