Nothing Special   »   [go: up one dir, main page]

School of Electrical Engineering and Computing Department of Electronics and Communication

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 12

Adama Science and Technology University

School of Electrical Engineering and Computing


Department of Electronics and Communication

Course Name: Engineering Application Software


Course code ECE 2208
Tewodros Endale
2021
Outline

Chapter -3
Solving Equations, Curve Fitting,
and Numerical Techniques
• Linear Algebra
• Polynomials
• Optimization
• Differentiation/Integration
• Differential Equations

04/03/2023 Chapter Three 2


Systems of Linear Equations

• Given a system of linear equations More Linear Algebra


r=rank(mat) % Rank of matrix
d=det(mat) % Matrix determinant
E=inv(mat) % Matrix inverse
• solve with a single line of code • MATLAB has many built-in matrix
decomposition methods
a=[1 2 -3;-3 -1 1;1 -1 1];
[V,D]=eig(X) % Eigenvalue
b=[5;-8;0]; decomposition
c=a\b [U,S,V]=svd(X) % Singular value
decomposition

04/03/2023 Chapter Three 3


Exercise

Solve the following systems of equations:

System 1 System 2

ANS
A=[1 4;-3 1]; ANS
b=[34;2]; A=[2 -2;-1 1;3 4];
x=A\b; b=[4;3;2];
y=inv(A)*b; x=A\b;
rank(A)

04/03/2023 Chapter Three 4


Polynomials
• Many functions can be well described by a high-
order polynomial
• MATLAB represents a polynomials by a vector of
coefficients r=roots(P) %the roots of a
polynomial
• if vector P describes a polynomial
P = poly(r) %Characteristic
polynomial or polynomial with
specified roots
P(1) P(2) P(3) P(4) y = polyval(p,x) %Polynomial
evaluation
Example
the polynomial
Could be represented by
P=[5 3 0 9]

04/03/2023 Chapter Three 5


Exercise
• Find the best second-order polynomial that fits the points:
(-1,0), (0,-1), (2,3)
i.e

ANS: 7

X=[-1 0 2]; %data vectors 6

Y=[0 -1 3]; %data vectors 5

p2=polyfit(X,Y,2); 4

plot(X,Y,'o', 'MarkerSize', 10); 3

hold on; 2

1
x = -3:.01:3;
0
plot(x,polyval(p2,x), 'r--');
-1
04/03/2023 Chapter Three -3 -2 -1 0 1 26 3
Numerical Differentiation

• MATLAB can 'differentiate' numerically 1

• see help 0.8

0.6
Exercise 0.4

x=0:0.01:2*pi; 0.2

y=sin(x); 0

-0.2
dydx=diff(y)./diff(x); -0.4

plot(y) -0.6

hold on -0.8

-1
plot(dydx) 0 100 200 300 400 500 600 700

04/03/2023 Chapter Three 7


Numerical Integration

• MATLAB contains common integration • Trapezoidal rule (input is a vector)


methods
x=0:0.01:pi;
• adaptive Simpson quadrature
• input is a function z=trapz(x,sin(x))
q = quad(fun,a,b)
See help

04/03/2023 Chapter Three 8


ODE Solvers

• MATLAB contains implementations of common ODE solvers


• Using the correct ODE solver can save you lots of time and give more accurate results
ode23 %Low-order solver.
• Use when integrating over small intervals or when accuracy is less important than speed

ode45 %High order(Runge-Kutta) solver


• High accuracy and reasonable speed.
• Most commonly used.

ode15s %Stiff ODE solver(Gear's algorithm)


• Use when the diff eq's have time constants that vary by orders of magnitude

04/03/2023 Chapter Three 9


Cont’d
• solve the position and velocity % pendulum
of the pendulum: % L is pendulum length
% g is acceleration due to
gravity
function dxdt = pendulum (t,x)
L=1
theta=x(1);
gamma=x(2);
dtheta=gamma;
dgamma=-(9.8/L)*sin(theta);
dxdt=zeros(2,1);
dxdt(1)=dtheta;
dxdt(2)=dgamma;
04/03/2023 Chapter Three 10
Cont’d

[t,x]=ode45('pendulum',[0 10],
[0.9*pi;0]); 8
Position
plot(t,x(:,1)); 6 Velocity

hold on; 4

plot(t,x(:,2),'r'); 2

legend('Position','Velocity'); 0

-2

-4

-6

-8
0 1 2 3 4 5 6 7 8 9 10

04/03/2023 Chapter Three 11


Thank you

04/03/2023 Chapter One 12

You might also like