0% found this document useful (0 votes)
36 views22 pages

Lecture 7-QH

This document discusses symbolic mathematics in computing. It introduces how to create symbolic variables and expressions in MATLAB or Octave. It describes functions for manipulating symbolic expressions like numden(), expand(), factor(), simplify(). It covers solving symbolic equations and systems of equations using solve() as well as substituting variables with subs(). Other topics include plotting symbolic functions with ezplot(), differentiating with diff(), and integrating with int().

Uploaded by

Vĩnh Phong
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)
36 views22 pages

Lecture 7-QH

This document discusses symbolic mathematics in computing. It introduces how to create symbolic variables and expressions in MATLAB or Octave. It describes functions for manipulating symbolic expressions like numden(), expand(), factor(), simplify(). It covers solving symbolic equations and systems of equations using solve() as well as substituting variables with subs(). Other topics include plotting symbolic functions with ezplot(), differentiating with diff(), and integrating with int().

Uploaded by

Vĩnh Phong
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/ 22

Introduction to Computing

Lecture

Symbolic Mathematics

Huynh Tan Quoc, PhD


Symbolic

 Expand or simplify symbolic expressions.

 Find symbolic roots, limits, minima, maxima, etc.

 Solving differentiate and integrate.

 Solve simultaneous equations (even some nonlinear).

 in linear algebra, including symbolic methods for


obtaining determinants, matrix inverses, and
eigenvalues….
Creating Symbolic Variables
 To create one symbolic variable, type sym:
x = sym('x’); x=str2 sym('x’);
You can also use the syms command:
syms x;
 To create multiple symbolic variables use the syms
command as follows:
syms x y z T0;
Creating a Symbolic Expression with
Symbolic Variables
 To create an expression using existing symbolic
variables, using syms command:
>> syms P K T P0;
P = P0*exp(K*T);
 Or
>> P = str2sym('P0*exp(K*T)');
Symbolic Function()

 numden()  subs()

 expand()  ezplot()

 factor()  diff()

 simplify()  int()

 poly2sym()

 solve()
numden()
• numden() :separate the numerator and denominator.

• Example:
>> syms x
y=2*((x+3)^2+1)/(x^2+6*x+9)
[Numerator, Denominator]=numden(y)

>> Numerator= 2*x^2 + 12*x + 20


Denominator=x^2 + 6*x + 9
expand()

• expand() : expand the products of


factors in an expression.

• Example:
>> syms x
y=2*(x+3)^2
expand(y)
>> ans=2*x^2 + 12*x + 18
factor()

• The factor() : factor an expression into a


product of terms.
• Example:
>> syms x
y=x^2 + 6*x + 9
factor(y)
>> ans=[(x+3), (x+3)]
simplify()
• simplify() : uses the Maple simplification
algorithm to simplify each part of an
expression.
• Example:
>> syms x
y=sin(x)^2 + cos(x)^2
simplify(y)
>> ans=1;
poly2sym() & sym2poly()
 poly2sym() :uses an array of coefficients
to create a polynomial:
 Example
>> a=[1,3,2]
b=poly2sym(a)
>> b = x^2 + 3*x + 2
 The function sym2poly() is the inverse of
poly2sym().
>>c= sym2poly(b)
>>c = 1 3 2
solve()
 The solve() function sets an expression
equal to zero, then solves the equation
for its roots.
 Example
>> syms x
y=x^2-9
solve(y)
>> ans=
3
-3
solve()
>> syms x a b c
y=a*x^2+b*x+c
solve(y)
ans =
-(b+(b^2-4*a*c)^(1/2))/(2*a)
-(b-(b^2-4*a*c)^(1/2))/(2*a)
solve()

>> syms x a b c
y=a*x^2+b*x+c
solve(y,a)
>>ans =
-(c + b*x)/x^2

Note that this solves the expression for “a”.


solve()
Systems of Equations
>> syms x y z
one=3*x+2*y-z==10
two=-x+3*y+2*z==5
three=x-y-z==-1
[x y z]=solve(one,two,three)

>> x=-2 y=5 z=-6


Or:
>> one=str2sym('3*x+2*y-z=10')
two=str2sym('-x+3*y+2*z=5')
three=str2sym('x-y-z=-1')
[x y z]=solve(one,two,three)
subs()
 The subs(): substitute a symbol with
another symbol or assign a number to a
variable.

>> syms a b c x y
quandratic=a*x^2+b*x+c
yquandratic=subs(quandratic,x,y)
>> yquadratic =
a*y^2 + b*y + c
subs()
Multiple substitutions
subs(symbolic_funct,{substitutant},{substitute})

>> subs(quadratic,{a,b,c},{1,2,3})
ans=x^2 + 2*x + 3
Or
>> subs(quadratic,{a,b,c,x},{1,2,3,4})
ans=27
ezplot()
 ezplot(): Plotting symbolic function

syms x
y=x^2-2*x+3
ezplot(y)
diff()
Differentiation
 diff(): take derivative symbolic functions
diff(f,x,n)
• n: the order of the derivative
 Example:
>> syms x
y=x^2-2*x+3
diff(y,x,1)
>>ans =
2*x - 2
int()
Integration
 int():take integral symbolic functions
int(y,x,a,b) or int(y,x)
 Example:
>> syms x
y=x^2-2*x+3
int(y,x)
>> ans =
(x*(x^2 - 3*x + 9))/3
>> int(y,x,1,2)
>> ans =7/3
int()
Integration Constant

Display constant
>> syms x a
y = 2*x;
int(y,a,x)
>> ans =
x^2 - a^2
Summary
 Creating Symbolic Expressions
 sym(‘x’), syms x, expressions i.e. e=str2sym(‘m*c^2’)
 Manipulation
 numden, expand, factor, simplify, poly2sym
 Solutions
 solve, subs
 Plotting
 ezplot
 Differentiation
 diff(y,x, n)
 Integration
 int(y, x, a, b)
Questions?

You might also like