0% found this document useful (0 votes)
143 views53 pages

DTU UG Mathematical Software 3

Uploaded by

tafeseobsi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
143 views53 pages

DTU UG Mathematical Software 3

Uploaded by

tafeseobsi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 53

College of Natural and Computational Sciences

Lecture Note for:


Introduction to Mathematical Software
(Math3112)

By:Assefa Denekew

January 1, 2025
Chapter 3: Introduction to MATLAB

1.1 Getting started with MATLAB


q MATLAB, short form of MATrix LABoratory.
q It is a programming language, particularly suitable for numerical
computations with matrices and vectors.
q It can also display information graphically.
q Programs written for Matlab are called m-files because it takes the
extension .m.

Starting MATLAB
q To bring up MATLAB from the operating system you should
q click on the matlab icon or
q type matlab at command prompt
q This will present the MATLAB command window with prompt 
2 / 53
Cont. . .

MATLAB Screen
q Command Window: used to type commands of the program.
q Workspace: used to view the program variable and value.
q Command history: used to view past commands and save a
whole session using diary.

3 / 53
Cont. . .

MATLAB Basics
Input and Output
q You put commands to MATLAB in the MATLAB Command
Window.
q MATLAB returns output in two ways:
q Typically, text or numerical output is returned in the same
Command Window,
q but graphical output appears in a separate graphics window.

q Variables are case sensitive, X is


different from x
=⇒
q The figure given below is an
example of output of ( 12 + 23 ) and
ezplot(0 x 3 − x 0 ).

4 / 53
Cont. . .

Arithmetic
Name Symbol Example: If a = 2, b = 4
Addition + a+b =6
Subtraction − a − b = −2
Multiplication ∗ a∗b =8
Right division / a/b = 0.5
Left division \ a\b = 2
Power aˆ b ab = 16
Special Constants Symbol Value
pi π 3.1416
Imaginary unit i 0.000 + 1.000i
Complex number z = 2 + 3i 2.000 + 3.000i
Modulus of z abs(z) 3.6056
Infinity ∞

5 / 53
Cont. . .

Built in functions
q Be ware of predefined variables like pi, i, j etc.
q String assignments −→w=’Mathematics 101’.
q MATLAB prints the answer and assigns the value called ans.
q Example:
3ˆ 2-(5+4)/2+6*9
ans=
58.5000.
q MATLAB assigns a new value to ans with each calculation.
q For example:
u=cos(10)
u=
-0.8391.

6 / 53
Cont. . .

There are three types of Number formats


Integer, Real and Complex.
q Non-Numbers Inf  1/0 and NaN  0/0.
q MATLAB uses double-precision floating point arithmetic, which is
accurate to approximately 15 digits; however, MATLAB displays
only 5 digits by default.
q To display more digits, type format long, then all subsequent
numerical output will have 15 digits displayed.
q Type format short to return to 5-digit display.
long  format long
short  format short
q If you make an error in an input line, MATLAB will beep and print
an error message.

7 / 53
Cont. . .

Example:
q  3uˆ 2
??? 3uˆ 2
|
Error: Missing operator, comma, or semicolon or Unexpected
MATLAB expression.
The error is a missing multiplication operator *. The correct input
would be 3*uˆ 2.
q Note that MATLAB places a marker (a vertical line segment) at the
place where it thinks the error might be;
q Missing multiplication operators and parentheses are among the
most common errors..
q You can edit an input line by using the UP Arrow key to re display
the previous command, editing the command using the LEFT and
RIGHT ARROW keys.
8 / 53
Cont. . .

Variables and Assignments


q In MATLAB, you use the equal sign to assign values to a variable.
q For instance:
 x=7
x=
7
will give the variable x the value 7 from now on. Henceforth,
whenever MATLAB sees the letter x, it will substitute the value 7.
q For example: if y has been defined as a symbolic variable then
 xˆ 2-2*x*y+y
ans =
49 − 13 ∗ y
q To clear the value of the variable x, type clear x.

9 / 53
Cont. . .

q You can make very general assignments for symbolic variables


and then manipulate them.
q For example:
 clear x; syms x y
 z=xˆ 2-2*x*y+y
z=
xˆ 2-2*x*y+y
 5*x*z
ans=
5*y*(xˆ 2-2*x*y+y)
q A variable name or function name can be any string or letters,
digits, and under- scores. Provided, it begins with a letter
(punctuation marks are not allowed).
q MATLAB distinguishes between uppercase and lowercase letters.

10 / 53
Cont. . .

Solving Equations
q You can solve equations involving variables with solve or fzero.
q For example: To find the solutions of the quadratic equation
x 2 − 2x − 4 = 0, type
solve(’xˆ 2-2*x-4=0’)
ans =
[5ˆ (1/2)+1]
[1-5ˆ (1/2)]
q To get numerical solutions, type double(ans), or vpa(ans) to
display more digits.
q The command solve can solve higher-degree polynomial
equations, as well as many other types of equations.

11 / 53
Cont. . .

q It can also solve equations involving more than one variable.


q If there are fewer equations than variables, you should specify (as
strings) which variable(s) to solve for.
q For Example: Type solve(’2*x-log(y)=1’, ’y’) to solve
2x − logy = 1 for y interms of x.
q You can specify more than one equation as well.
q For example: Type
[x,y]=solve(’xˆ 2-y=2’, ’y-2*x=5’) and you will observe:
x= y=
[1+2*2ˆ (1/2)] [7+4*2ˆ (1/2)]
[1-2*2ˆ (1/2)] [7-4*2ˆ (1/2)]
q This system of equations has two solutions.
q MATLAB reports the solution by giving the two x values and the
two y values for those solutions.

12 / 53
Cont. . .

q Thus the first solution consists of the first value of x together with
the first value of y .
q You can extract these values by typing x(1) and y (1):
x(1)
ans =
1+2*2ˆ (1/2)
y(1)
ans =
7+4*2ˆ (1/2)
q Some equations cannot be solved symbolically, and in these
cases solve tries to find a numerical answer.
q For example: Type the following code and see its solution.
solve(’sin(x)=2-x’)

13 / 53
Cont. . .

Exercise:
1. Compute:
a) 1111 − 345
b) e14 and 382801π to 15 digits each. Which is bigger.
c) the fractions 2709/1024, 10583/4000 and 2024/765.

Which of these are the best approximation to 7?
2. Compute to 15 digits:
a) cosh(0.1)
b) arctan(1/2).
c) ln(2)
3. Solve the following equations:
a) 8x + 3 = 0
b) x 3 + px + q.

14 / 53
Cont. . .

1.2 MATLAB functions


Built-in functions
q In MATLAB you will use both built-in functions as well as
functions that you create yourself.
q MATLAB has many built-in functions.
q These include sqrt, cos, sin, tan, log, exp, and atan (for arctan) as
well as more specialized mathematical functions such as gamma,
erf, and besselj.
q MATLAB also has several built-in constants,
√ including pi (the
number π), i (the complex number i = −1), and Inf (infinity ∞).
q Here are some Example:
 log(exp(3))  sin(2*pi/3)
ans= ans=
3 0.8660
15 / 53
Cont. . .

Note that:
q The function log is the natural logarithm, called ln in many texts.
q The above examples return approximate numeric solution.
q To get exact answer, you need to use a symbolic argument as
follows:
sin(sym(2*pi/3))
ans=
1/2*3ˆ (1/2)

User-defined function
q In this section we will show how to use "inline" to define your own
functions.
q Now let’s define the polynomial function f (x) = x 2 + x + 1:

16 / 53
Cont. . .

Inline function:
1.  f=inline(’xˆ 2+x+1’,’x’)
f=
Inline function:
f(x) = xˆ 2+x+1
q The first argument to inline is a string containing the expression
defining the function.
q The second is a string specifying the independent variable.
q Once the function is defined, you can evaluate it as:
 f(4)
ans =
21
2. Write these codes and evaluate:
a)  f1=inline(vectorize(’xˆ 2+x+1’),’x’), f1(1:3)=?
b)  g=inline(’uˆ 2+vˆ 2’,’u’,’v’), g(1,2)=?

17 / 53
Cont. . .

1.3 Plotting
2-D plotting
q MATLAB’s basic plotting commands are ezplot and plot.
q The simplest way to draw the graph of a function of one variable is
with ezplot, which expects a string or a symbolic expression
representing the function to be plotted.
q For example: To draw the graph x 2 + x + 1 on the interval -2 to 2
(using the string form of ezplot), type

 ezplot(’xˆ 2 + x + 1’ , [-2 2]) =⇒

18 / 53
Cont. . .

Title and label


q We can add title of the graph and axis labeling as follows:

 ezplot(’xˆ 2 + x + 1’ , [-2 2])


 title (’A Parabola’)
=⇒
 xlabel (’x-axis’)
 ylabel (’y-axis’)

19 / 53
Cont. . .

q The command plot works on vectors of numerical data.


q The basic syntax is plot(X, Y) where X and Y are vectors of the
same length.
q The command plot(X, Y) considers the vectors X and Y to be lists
of the x and y coordinates of successive points on a graph and
joins the points with line segments.
q For example: To plot x 2 + x + 1 and y = sin(x) on the interval
from -2 to 2 and 0 to 2π we first make a list X of x values, and then
type
 X= -2:0.1:2;  plot(x, y)
 plot(X, X.ˆ 2+X+1)  xlabel(’x=0:π/2’)
 X=0:π/100:2π;  ylabel(’Sine of x’)
 y=sin(x);  title(’Plot of the sine function’)

20 / 53
Cont. . .

q You can choose the color of the graph: Possible to have more than
one graph together:
 x=0:π/100:2π;
 y=sin(x); z=cos(x);
 plot(x,y,’r’,x,z,’g’)
 legend(’sin(x)’,’cos(x)’)
 grid on =⇒
 xlabel(’x=0:π/2’)
 ylabel(’function’)
 title(’Plot of the Sine and
Cose functions’)

21 / 53
Cont. . .

Parametric Plots
q Sometimes x and y are both given as functions of some
parameter.
q For example: The circle of radius 1 centered at (0,0) can be
expressed in parametric form as x = cos(2πt); y = sin(2πt)
where t runs from 0 to 1.
q Though y is not expressed as a function of x, you can easily draw
this curve with plot, as follows:

 t=0:0.01:1;
 plot(cos(2*pi*t), sin(2*pi*t)) =⇒
 axis square

22 / 53
Cont. . .

Contour Plots
q Contour plot of a function of two variables is a plot of the level
curves of the function,
q That is, sets of points in the x − y plane where the function
assumes a constant value.
q The command meshgrid produces a grid of points in a specified
rectangular region, with a specified spacing.
q a contour of x 2 + y 2 plotted as follows:

[X Y]=meshgrid(-3:0.1:3,-3:0.1:3);
 contour(X, Y, X. ˆ 2 + Y. ˆ 2) =⇒
 axis square

23 / 53
Cont. . .

3-D Plotting
Curves in Three-Dimensional Spaces
q For plotting curves in 3-space, the basic command is plot3,
q It works like plot, except that it takes three vectors instead of two,
one for the x coordinates, one for the y coordinates, and one for
the z coordinates.

Surfaces in Three-Dimensional Space


q There are two basic commands for plotting surfaces in 3-space:
mesh and surf.
q The former produces a transparent "mesh" surface; the latter
produces an opaque shaded one.

24 / 53
Cont. . .

For example:
q We can plot a Helix with

 T=-2:0.01:2;
=⇒
 plot3(cos(2*π*T), sin(2*π*T), T)

q We can plot a graph of z = x 2 − y 2 as:

 [X, Y] = meshgrid(-2:0.1:2,-2:0.1:2);
 Z=X.ˆ 2-Y.ˆ 2; =⇒
 mesh(X, Y, Z)

25 / 53
Cont. . .

Exercise:
1. Use plot and/or ezplot, as appropriate, to draw the graph of the
following functions:
a) y = x 3 − x for − 4 ≤ x ≤ 4.
b) y = sin(1/x 2 ) for − 2 ≤ x ≤ 2.
c) y = tan(x/2) for − π ≤ x ≤ π, −10 ≤ y ≤ 10.
2. Use contour to plot the following:
a) f (x, y ) = 3y + y 3 − x 3 for − 1 ≤ x, y ≤ 1.
b) f (x, y ) = ylnx − xlny for − 1 ≤ x, y ≤ 1.
3. Plot the following surfaces:
a) z = sinxsiny for − 3π ≤ x, y ≤ 3π.
b) z = (x 2 + y 2 )cos(x 2 + y 2 ) for − 1 ≤ x, y ≤ 1.

26 / 53
Cont. . .

1.4 M-Files
q M-Files are ordinary text files containing MATLAB commands.
q you can use the built-in Editor/Debugger, which you can start by
typing edit, either by itself (to edit a new file) or followed by the
name of an existing M-file in the current working directory.
q You can also use the File menu or the two leftmost buttons on the
tool bar to start the Editor/Debugger, either to create a new file or
to open an existing file.
q There are two different kinds of M-files: script M-files and
function M-files.

Script M-Files
q We now show how to construct a script M-file to solve the
mathematical problem.

27 / 53
Cont. . .

For example:
q Create a file containing the following lines:
format long
x = [0.1,0.01,0.001];
y = sin(x)./x
q We will assume that you have saved this file with the name
task1.m in your working directory, or in some directory on your
path.
q You can tell MATLAB to run (or execute) this script by typing task1
in the Command Window as:
 task1
y=
0.998334166468282 0.999983333416666
0.999999833333342

28 / 53
Cont. . .

q To revert to 5-digit format, you would have to type format short.


q Type
format short
x = [0.1,0.01,0.001];
y = sin(x)./x
Run and see the change from the previous
q If you want the commands to be displayed along with the results,
use echo:
q Type
echo on
format short
x = [0.1,0.01,0.001];
y = sin(x)./x
echo on Run and see the change from the previous result.

29 / 53
Cont. . .

Example:
q The radius of a circle is input through the keyboard. Write a
program to calculate the area and circumference of a circle.
Answer:
r=input(’Enter radius of a circle:’)
a = pi*rˆ 2;
c = 2*pi*r;
fprintf(’The area of a circle = %2.5f/n’,a)
fprintf(’The circumference of a circle = %2.5f/n’,c)
q Exercise:
Monthly salary is an input variable through the keyboard. Write a
program to calculate a 10% income tax payment from the monthly
salary.

30 / 53
Cont. . .

Function M-Files
q MATLAB allows you to define your own function by constructing
m-file in the m-file Editor. The first line of the function has the form
q function y = function_name(input argument)
q Example: To define the function f (x) = x 2 − 2x − 3 as an m-file:
q Type in the editor
function y = myfun1(x)
y = x.ˆ 2 - 2*x - 3; and save it as myfun1
q Once the function is saved in m-file named myfun1.m, you can
use it like the built-in functions to compute or plot.
 myfun1(5)
ans =
12

31 / 53
Cont. . .

q Matlab can be used to find a zero of a function if it crosses x-axis:


q fzero(‘fun’, x_0)
finds a zero of function myfun1 closest to x_0.
q fzero(‘myfun1’, [a,b])
finds a zero of myfun1 in the interval [a, b].
q For instance:
 x1=fzero(’myfun1’ , 0)
x1 =
-1
 x2=fzero(’myfun1’ , [1, 5])
x2 =
3
q Built-in function quad(‘f’, a, b) produces numerical integration of
the function f(x) from a to b.

32 / 53
Cont. . .

Example:
q  quad(’myfun1’,0,5)
ans =

1.6667
q Matlab can be used to find minima of a function on an interval:
x=fminbnd(’myfun1’,a,b)
finds a local minimizer x of the function myfun1 in the interval
a ≤ x ≤ b.
q Example:
 x=fminbnd(’myfun1’,0,5)
x=
1

33 / 53
Cont. . .

Function of several variables


q For instance: For f (x, y ) = x 2 + y 2 you may define as:
function f=myfun2(x,y)
f = x.ˆ 2+y.ˆ 2
q Once this is saved at m-file named myfun2.m, you can use it like
any built in function.
q For instance, see the results of the following commands:
 myfun2(2,3)
 x = [0:5]; y=x+1; myfun2(x,y)
[x, y] = meshgrid(-3:0.2:3,-3:0.2:3);
surf(x, y, ,myfun2(x, y))
q To find a minimum of function of several variables, f(x), where
x ∈ R n , use the fminsearch command:

34 / 53
Cont. . .

Syntax of Conditions, and Loops

I) Conditional II) For loop:


if (expression 1) for index=initial:step:final
statment1 statements
elseif (expression 2) end
statment2 III) While loop:
else while (expression)
statment3 statements
end end
q Example: Write the following program and see the result.
x=input(’Enter any number:’)
if a<6
fprintf(’Wel come\n’)
else fprintf(’Good Bye\n’) end
35 / 53
Cont. . .

Examples:
q Write the following programs and execute:
1. The program to find the sum of the first 50 natural numbers:
sum=0;
for i=1:50
sum=sum+i;
end
fprintf(’The sum is=%d\n’,sum)
2. The program to displays integers 1 up to 10:
i=1;
while i<=10
fprintf(’%d\n’,i)
i=i+1;
end

36 / 53
Cont. . .

Exercise:
1. Write a program to find the factorial value of any number entered
through the keyboard.
2. Write a program that displays the first 100 natural numbers that
are not multiple of 2.
3. Write a program that displays the first 100 natural numbers that
are not multiple of 2 and not multiple of 5.
4. Write a program to display the reverse of any number.
5. Write a program to display:
a) * * * * * b) * * * * *
* * * * * * * *
* * * * * *
* * * *
* *
37 / 53
Cont. . .

1.5 Control structures


Programming in MATLAB
q Program in MATLAB consists of a sequence of MATLAB
commands and may include the following important flow control
commands.
q Example: Given the coefficients a, b, c of a quadratic function
f (x) = ax 2 + bx + c, write a Matlab program that
q checks the sign of the discriminant of the quadratic equation
q tells whether it has two real roots, one real root or complex
q finds the roots of the quadratic equation
P100 √
q Write a Matlab program to find the sum y = i=1 1/ i
q Write a Matlab program to identify the minimum of two numbers
by accepting from the keyboard.

38 / 53
Cont. . .

1.6 Matrix computation


Matrix syntax
 x = [1 2 3 4]
x = (1, 2, 3, 4) x=
1 2 3 4
 A = [1 2 3; 5 1 4; 3 2 − 1]
Matrix A = 3 × 3
A=
with row
1 2 3
1, 2, 3; 5, 1, 4;
5 1 4
and 3, 2, −1
3 2 -1
B=A T

B=
Transpose B = AT 1 5 3
2 1 2
3 4 -1

39 / 53
Cont. . .

Generating Matrices
m × n matrix of uniformly  x = rand(1, 3)
rand (m, n) distributed random x=
numbers in (0, 1) 0.9501 0.2311 0.6068
 x = zeros(2, 3)
x=
zeros (m, n) m × n matrix of zeros
0 0 0
0 0 0
 x = ones(1, 3)
ones(m, n) m × n matrix of ones x=
1 1 1
 x = eye(2, 2)
eye(n, n) m × n matrix of ones x=
1 0
0 1
40 / 53
Cont. . .

Generating Arrays
q The most useful commands are
q  length(x) length of the array (number of its elements)
q  norm(x) vector norm
q  det(A) determinant of A.
q inv (A) inverse of A.
q  eige(A) eigenvalues and eigenvectors of A.
q D=eig(A) vector containing the eigenvalues of A
q [V, D]=eig(A) yields a diagonal matrix D of eigenvalues and a
matrix V whose columns are the corresponding eigenvectors.
q  rank(A) rank of A.
q  lu(A) LU decomposition of A.
q  qr(A) QR factorization of A.
q  sum(A) sum of its elements of A.
q  max(A) largest element of A.
q  min(A) smallest element of A.
q  mean(A) average of A.
q  std(A) standard deviation of A.

41 / 53
Cont. . .

Subscripts and extraction of components


q After we created a matrix we might want to extract some elements
from it. To extract the i th element of a vector x you type
 x(i) x(i : j) extracts the entries (components) of x from i to j.
Given a matrix A, A(i, j) extract its elements at i − j th entry.
q Typing the command:
q  A(:, j) will extract the j-th column of A,
q  A(i, :) will extract the i-th row of A, and
q  diag(A) will extract the elements in the main diagonal of A.

Arithmetic operations on vectors/Matrices


q For matrices A and B.
symbol name code
+ addition A+B
− subtraction A−B

42 / 53
Cont. . .

symbol name code


∗ multiplication A ∗ B, k ∗ A for k ∈ R
/ right division A/B = A ∗ inv (B)
\ left division A\B = inv (A) ∗ B
ˆ power (A square matrix)r Aˆ 2=A*A

square root \sqrt(V)
.∗ element by element multiplication A. ∗ B
./ element by element right division A./B
.ˆ element by element power A.ˆ n
q Solution of System of Linear Equations Ax = b
q Enter the coefficient matrix A, column vector b, and check for
det(A)
q The command  x = inv (A) ∗ b produces the solution.

43 / 53
Cont. . .

Relational and Logical operations


q Relational and operations
q == Equal
q ∼ = Not equal q Logical operations
q < Less than q & AND
q <= Less than or equal q | OR
q > Greater than q ∼ NOT
q >= Greater than or equal

44 / 53
Cont. . .

Examples
q Consider  A = pascal(5)
A=
1 1 1 1 1
1 2 3 4 5
1 3 6 10 15
1 4 10 20 35
1 5 15 35 70
q Type the following command and see the result:
1.  A>=5
2.  sum(A>=5)
q Furthermore, consider the followings and explain the results:
1.  (A>=5).*A 3. (A>5 & A<=20).*A
2.  A>=5 & A<=20 4. length(A(A==10))

45 / 53
Cont. . .

1.7 Symbolic Mathematics


Differentiation
q You can use diff to differentiate symbolic expressions and also to
approximate the derivative of a function given numerically (say by
an M-file)
q syms x; diff(xˆ 3)
ans =
3*xˆ 2
q  f = inline(’xˆ 2’, ’x’); diff(f(x))
ans =
3*xˆ 2
q To use the symbolic ODE solver on the differential equation
0
xy + 1 = y , you enter dsolve(‘x*Dy + 1 = y’, ‘x’)

46 / 53
Cont. . .

q The syntax for second derivatives is diff (f(x), 2),


q For nth derivatives, diff (f(x), n).
q The command diff can also compute partial derivatives of
expressions involving several variables, as in diff(xˆ 2*y,y)
q But to do multiple partials with respect to mixed variables you
must use diff repeatedly, as in diff (diff (sin(x*y/z), x), y).
q Remember to declare y and z symbolic.

Integration
q MATLAB can compute definite and indefinite integrals.
q Here is an indefinite integral:

47 / 53
Cont. . .

q  int(’xˆ 2’,’x’)
ans =
1/3*xˆ 3
q As with diff, you can declare x to be symbolic and dispense with
the character string quotes.
q Note that MATLAB does not include a constant of integration; the
output is a single antiderivative of the integrand.
q Now here is a definite integral:
q  syms x; int(asin(x),0,1)
ans =
1/2*pi-1
q MATLAB has different commands for numerical integration of a
function f(x) like: quad, quadl, etc.

48 / 53
Cont. . .

Examples
q  syms x; int(xˆ 3*exp(-xˆ 4),0,1)
q  quadl(vectorize( int(xˆ 3*exp(-xˆ 4)),0,1)
q MATLAB can also do multiple integrals.
q The following command computes the double integral
R π R sinx 2
0 0 (x + y 2 )dydx
q The Matlab code to compute the above double integral is:
 syms x y; int(int(xˆ 2 + yˆ 2, y, 0, sin(x)), 0, pi) and it will
generate or it gives as
piˆ 2-33/9

49 / 53
Cont. . .

Limits
q You can use limit to compute right-handed and left-handed limits
and limits at infinity.
sin(x)
For example, lim can be coded as:
x→0 x
 syms x; limit(sin(x)/x,x, 0)
ans =
1
q To compute one-sided limits, use the ‘right’ and ‘left’ options.
|x|
For example, lim can be coded as:
x→0 − x
 syms x; limit(abs(x)/x,x, 0,’left’)
q Limits at infinity can be computed using the symbol Inf: Write the
x 4 +x 2 −3
code to compute lim 3x 4 −ln(x)
x→∞

50 / 53
Cont. . .

Sums and Products


q Finite numerical sums and products can be computed easily using
the vector capabilities of MATLAB and the commands sum and
prod. For example,
 X = 1:7;
 sum(X)  prod(X)
ans = ans =
28 5040
q You can do finite and infinite symbolic sums using the command
symsum. To illustrate, here is the well-known infinite sum ∞ 1
P
n=1 n2 :
 symsum(1/nˆ 2,1,Inf)
ans =
piˆ 2/6

51 / 53
Cont. . .

q AnotherP familiar example is the sum of the infinite geometric


series: ∞ n
n=0 a  syms a n; symsum(aˆ n,0,Inf)
ans =
-1/(a-1)
q Note that: however, the answer is valid only for |a| < 1.

52 / 53
End of Chapter Three

You might also like