matlab basics

89
MATLAB Applications to electrical Engineering 6/28/22 12:45:02 AM MATLAB PRESENTATION 1 V R SIDDHARTHA ENGINEERING COLLEGE EEE DEPARTMENT S.V.R.LAKSHMI KUMARI ASSOCIATE PROFFSSOR P.VENKATESH ASSISTANT PROFESSOR

Upload: venki249

Post on 23-Jan-2016

215 views

Category:

Documents


2 download

DESCRIPTION

MATLAB BASICS

TRANSCRIPT

Page 1: MATLAB Basics

MATLAB Applications to electrical Engineering

V R SIDDHARTHA ENGINEERING COLLEGEEEE DEPARTMENT

S.V.R.LAKSHMI KUMARIASSOCIATE PROFFSSOR

P.VENKATESHASSISTANT PROFESSOR

Page 2: MATLAB Basics

Introduction to MATLAB MATLAB Basics Vectors and Matrices Loops Plots Examples Simulink Modelling examples

MATLAB

SIMULINK

Page 3: MATLAB Basics

CONTENTS

Introduction to MATLAB MATLAB Basics Vectors and Matrices Loops Plots Examples

Page 4: MATLAB Basics

04/21/2023 07:39:39 PM MATLAB PRESENTATION 4

MATLAB has been developed by Math Works ,It is a powerful software package used for high performance scientific numeric computation ,data analysis and visualization

MATLAB stands for MATrix Laboratory

MATLAB provides matrix as one of the basic elements. It provides basic operations like addition , subtraction , multiplication by use of simple mathematical operators

Programs can be run step by step, with full access to all variables, functions etc

MATLAB INTRODUCTION

Page 5: MATLAB Basics

We need not declare the type and size of any variable in advance and MATLAB is case sensitive and so we have to be careful about the case of variables while using them in our program

MATLAB gives an interactive environment with hundreds of reliable and accurate built in functions. These functions help in providing the solutions to a variety of mathematical problems including matrix algebra ,linear systems ,differential equations ,optimization, nonlinear systems and other scientific and technical computations

It facilitates access to FORTRAN and C codes by means of external interfaces

Page 6: MATLAB Basics

Rows and columns are always numbered starting at 1

MATLAB matrices are of various types to hold different kinds of data (usually floats or integers)

A single number is really a 1 x 1 matrix in MATLAB

Any matrix can be assigned to any variable

Page 7: MATLAB Basics

7

Advantages and Disadvantages of MATLAB

• Advantages: Ease of Use

Platform Independent (All versions of Windows, Linux, Unix, Mac.)

Predefined Functions and Toolboxes

Device-Independent Plotting

Graphical User Interface

Matlab compiler

• Disadvantages:

Interpreted programming language, slower than C++ and

Fortran.

Page 8: MATLAB Basics

MATLAB BASICS

Introduction to Matlab MATLAB Basics Vectors and Matrices Loops Plots MATLAB examples

Page 9: MATLAB Basics

04/21/2023 07:39:39 PM MATLAB PRESENTATION 9

Command Window

Workspace

CommandHistory

Change the current directory to the location of your

Matlab file at startup

Page 10: MATLAB Basics

10

MATLAB WindowsMATLAB desktop

Workspace: All the information and details of every variable entered into the

command window is displayed here.

Command History : stores history of every command.

Command window: Every operation which we want to perform is to be entered in command window.

 

Editor Window :This window is used to write any program, which includes many command statements. By using this window one can edit any previously written command.

Figure Window :All the figures are shown in a separate figure window.

Page 11: MATLAB Basics

04/21/2023 07:39:40 PM MATLAB PRESENTATION 11

3 ways to open a new m-file using MATLAB editor

1. Type >> edit myprogram.m at the command prompt

2. Click on the blank page on MATLAB main window toolbar

3. Click File → New → M-file

Page 12: MATLAB Basics

Variables1. In MATLAB environment, every variable is an array or matrix

2. Once a variable is entered into the system, you can refer to it later

3. When an expression returns a result that is not assigned to any variable, the system assigns it to a variable named ans, which can be used later

4. You can have multiple assignments on the same line

Ex : a = 2; b = 7; c = a * b5. The who command displays all the variable names you have used6. The whos command displays little more about the variables7. A valid variable name starts with a letter, followed by letters, digits, or underscores8. Avoid creating variables with the same name as a function (such

as i, j, mode, char, size, and inf etc.)9. Check whether a proposed variable name is already in use with

the exist or which function. exist returns 0 if there are no existing variables, functions, or other artifacts with the proposed name

Page 13: MATLAB Basics

Predefined variables

Break,Case,Catch,continue,else,elseif end,for,function,global,if,otherwise,return,

switch,try ,while,pi,j,I,ans,NaN,inf etc

Page 14: MATLAB Basics

Creating VectorsCreate vector with equally spaced intervals>> x=0:0.5:pix = 0 0.5000 1.0000 1.5000 2.0000 2.5000 3.0000

Create vector with n equally spaced intervals>> x=linspace(0, pi, 7)x = 0 0.5236 1.0472 1.5708 2.0944 2.6180 3.1416

Equal spaced intervals in logarithm space>> x=logspace(1,2,7)x = 10.0000 14.6780 21.5443 31.6228 46.4159 68.1292 100.0000

Page 15: MATLAB Basics

Some Built-in functions• mean(A):mean value of a vector• max(A), min (A): maximum and

minimum. • sum(A): summation.• sort(A): sorted vector• median(A): median value• std(A): standard deviation. • det(A) : determinant of a square

matrix • dot(a,b): dot product of two vectors• Cross(a,b): cross product of two vectors• Inv(A): Inverse of a matrix A

Page 16: MATLAB Basics

04/21/2023 07:39:40 PM MATLAB PRESENTATION 16

Arithmetic Operations and PrecedenceOperation Algebraic Matlab

Form Scalar

addition a + b a + bsubtraction a – b a – bmultiplication a x b a * bdivision a ÷ b a / bExponentiation ab a ^ b

Precedence Operation

1 Parenthesis, innermost first.

2 Exponentiation, left to right

3 Multiplication & division, left to right

4 Addition & subtraction, left to right2^3^4 equals (2^3)^4 2/3*4 equals (2/3)*4 2-3+4 equals (2-3)+4

Page 17: MATLAB Basics

04/21/2023 07:39:40 PM MATLAB PRESENTATION 17

Function Descriptionexp(x) Exponential (ex)log(x) Natural logarithm

log10(x) Base 10 logarithmsqrt(x) Square root

Page 18: MATLAB Basics

04/21/2023 07:39:40 PM MATLAB PRESENTATION 18

Trigonometric OperationsFunction Description

sin(x) Computes the sine of x, where x is in radians.

csc(x) Computes the cosec of x, where x is in radians.

sind(x) Computes the sin of x, where x is in degrees.

asin(x) Computes the arcsine or inverse sine of x, where x is in radians.

sinh(x) Computes the hyperbolic sine of x, where x is in radians.

atanh(x) Computes the inverse hyperbolic tangent of x.

Page 19: MATLAB Basics

04/21/2023 07:39:40 PM MATLAB PRESENTATION 19

Complex Number FunctionsFunction Description

conj(x)Computes the complex conjugate of the complex number x. Thus, if x is equal to a+ib, then conj(x) will be equal to a-ib.

real(x) Computes the real potion of the complex number x.

imag(x) Computes the imaginary potion of the complex number x.

abs(x) Computes the absolute value of magnitude of the complex number x.

angle(x) Computes the angle of the complex number x.

Page 20: MATLAB Basics

04/21/2023 07:39:41 PM MATLAB PRESENTATION 20

Commands for Managing VariablesCommand Description

clear Removes all variables from the memory.

clear a, b Clears only variables a and b from memory.

who Lists the variables currently in workspace.

whos Displays a lists of the variables currently in the memory and their size together with information about their bytes & class.

Page 21: MATLAB Basics

Examples>> x=1:3

x = 1 2 3

>> exp(x)

ans = 2.7183 7.3891 20.0855

>> log(x)

ans = 0 0.6931 1.0986

>> sqrt(x)

ans = 1.0000 1.4142 1.7321

Page 22: MATLAB Basics

Addition,substraction and division of complex numbers

clc;

clear;

z1=1+2i;

z2=3+4i;

z3=z1+z2

z4=z1-z2

z5=z1*z2

z6=z1/z2

abs(z2)

angle(z3)

Page 23: MATLAB Basics

Output

z3 = 4.0000 + 6.0000i

z4 = -2.0000 - 2.0000i

z5 = -5.0000 +10.0000i

z6 = 0.4400 + 0.0800i

ans =5

ans = 0.9828

Page 24: MATLAB Basics

04/21/2023 07:39:41 PM MATLAB PRESENTATION 24

Solve the following examples using MATLAB

Page 25: MATLAB Basics

04/21/2023 07:39:41 PM MATLAB PRESENTATION 25

Page 26: MATLAB Basics

04/21/2023 07:39:41 PM 26

Program to calculate trignometric values

• Program:x=0:30:180;y=[sind(x);cosd(x);tand(x);cscd(x);secd(x);cotd(x)]z=[x;y]

MATLAB PRESENTATION

Page 27: MATLAB Basics

04/21/2023 07:39:41 PM MATLAB PRESENTATION 27

Solving linear equations

A System of simultaneous linear equations is written , AX =B

A is a given square matrix of order n , B is a given column vector of n components and X is an unknown column vector of n components

we have learn that the solution to AX =b ,can be written as X=A-1b ,where A-1 is the inverse of A

Page 28: MATLAB Basics

04/21/2023 07:39:41 PM MATLAB PRESENTATION 28

• Example :

Page 29: MATLAB Basics

Solutions to Systems of Linear Equations (con’t…)

• Solution by Matrix Inverse:Ax = bA-1Ax = A-1bx = A-1b

• MATLAB:>> A = [ 3 2 -1; -1 3 2; 1 -1 -1];>> b = [ 10; 5; -1];>> x = inv(A)*bx = -2.0000 5.0000 -6.0000

Answer:x1 = -2, x2 = 5, x3 = -6

• Solution by Matrix Division:The solution to the equation

Ax = bcan be computed using left division.

Answer:x1 = -2, x2 = 5, x3 = -6

NOTE: left division: A\b b A right division: x/y x y

MATLAB:>> A = [ 3 2 -1; -1 3 2; 1 -1 -1];>> b = [ 10; 5; -1];>> x = A\bx = -2.0000 5.0000 -6.0000

Page 30: MATLAB Basics

“linsolve” command

• Solve the system:

• A*S=B• MATLAB Code:

609

234

3325

zyx

zy

zyx

04/21/2023 07:39:42 PM

>> A=[5,-2,-3;0,4,3;1,-1,9];>> B=[-3,-2,60]'; % Note vector transpose (‘)>> S=linsolve(A,B)S = 1.0000 -5.0000 6.0000

Page 31: MATLAB Basics

‘’ Solve ‘’ command

MATLAB CODE OUTPUT

1)Quadratic equation x2 -7x +12 = 0

>> Eq = X^2-7*X+12;>>S= Solve(Eq); (or)solve('x^2-7*x+12=0')

s = 3 4

2) X4-7X3+3X2-5X+9=0

>> Eg= X^4-7*X^3+3X^2-5X+9=0; >>S=solve(Eg);

S= 6.6304 ,1.06 ,-0.34 – 1.077 and -0.34 + 1.077

The solve command used to solve quadratic equations. The function returns the roots of the equation Example :

Page 32: MATLAB Basics

EX: syms a b c x fun=a*x^2+b*x+c; solve(fun,x)

Output:ans = -(b + (b^2 - 4*a*c)^(1/2))/(2*a) -(b - (b^2 - 4*a*c)^(1/2))/(2*a)

Page 33: MATLAB Basics

04/21/2023 07:39:42 PM MATLAB PRESENTATION 33

Expand and the Collect commands

• The expand and the collect command expands and collects an equation respectively. The following example demonstrates the concepts

MATLAB Code :

Page 34: MATLAB Basics

04/21/2023 07:39:42 PM MATLAB PRESENTATION 34

Factor command :

• The factor command factorizes an expression and the simplify command simplifies an expression.

Examples :MATLAB code Answer

factor(x^3 - y^3) (x - y)*(x^2 + x*y + y^2)

factor([x^2-y^2,x^3+y^3]) [ (x - y)*(x + y), (x + y)*(x^2 - x*y + y^2)]

simplify((x^4-16)/(x^2-4)) x^2 + 4

Simplify((x^3-y^3)/(x-y) X^2+x*y+y^2

Page 35: MATLAB Basics

04/21/2023 07:39:42 PM MATLAB PRESENTATION 35

‘Polyval’ command:

‘POLYVAL’ command Evaluates polynomial in a matrix senseEx 1:>> a=[1 2 3]; % polynomial X2 + 2X +3 >> polyval(a,1) % polynomial is evaluated at ‘1’ans =6

Ex 2:

>>a=[1 2 3]>>b= 1:5>>C=polyval(a,b) Output :C=[6 11 18 27 38]

Page 36: MATLAB Basics

Polyval and poly

EX :(with breakpoints)clcclearp=[1 2 1]x=-2:1:2y=polyval(p,x)plot(x,y)r=roots(p)q=poly(r)

Page 37: MATLAB Basics

04/21/2023 07:39:42 PM MATLAB PRESENTATION 37

‘Diff’ command

• MATLAB provides the diff command for computing symbolic derivatives

• Examples :MATLAB CODE ANSWER

syms tf = 3*t^2 + 2*t^(-2);diff(f)

6*t - 4/t^3

f = x*exp(-3*x);diff(f, 2)

9*x*exp(-3*x) - 6*exp(-3*x)

Page 38: MATLAB Basics

04/21/2023 07:39:42 PM MATLAB PRESENTATION 38

Integration:

• MATLAB Code :syms x int(2*x)ans = x^2

For example, to calculate the value of we writeint(x, 4, 9)ans = 65/2

Page 39: MATLAB Basics

04/21/2023 07:39:43 PM MATLAB PRESENTATION 39

Dsolve command:

MATLAB provides the dsolve command for solving differential equations symbolically. The most basic form of the dsolve command for finding the solution to a single equation is :

second order differential equation as: y" - y = 0, y(0) = -1, y'(0) = 2.

MATLAB Code : dsolve('D2y - y = 0','y(0) = -1','Dy(0) = 2')

ans = exp(t)/2 - (3*exp(-t))/2

Page 40: MATLAB Basics

04/21/2023 07:39:43 PM MATLAB PRESENTATION 40

Polynomial Algebra (Convolution Operator)

82026218)445)(23( 2345232 xxxxxxxxxx

• Polynomial products and factoring:

MATLAB code :For onvolution For Deconvolution

>> p1=[1,3,2];>> p2=[1,5,4,4];>> pc=conv(p1,p2)pc = 1 8 21 26 20 8

>> deconv(pc,p2)ans = 1 3 2>> deconv(pc,p1)ans = 1 5 4 4

Page 41: MATLAB Basics

Mathematics Example:Polynomial Roots

• Find the roots of the following system:

• MATLAB code:

812 2 xxy

04/21/2023 07:39:43 PM

>> roots([12 -1 -8])ans = 0.8592 -0.7759

Page 42: MATLAB Basics

Finding the Maxima and Minima of a Curve

ExampleLet us find the stationary points of the function f(x) = 2x3 + 3x2 − 12x + 17 syms x;y = 2*x^3 + 3*x^2 - 12*x + 17; % defining the function ezplot(y)

Page 43: MATLAB Basics

Our aim is to find some local maxima and minima on the graph, so let us find the local maxima and minima for the interval [-2, 2] on the

graph

syms x;y = 2*x^3 + 3*x^2 - 12*x + 17; ezplot(y, [-2, 2])

Page 44: MATLAB Basics

Laplace and Inverse Laplace Transforms

MATLAB Code Answer

laplace(a) 1/s^2

laplace(t^2) 2/s^3

ilaplace(1/s^3) t^2/2

Page 45: MATLAB Basics

Fourier Transforms and Inverse Fourier Transforms

MATLAB Code Answer

f = exp(-2*x^2); FT = fourier(f)

FT = (2^(1/2)*pi^(1/2)*exp(-w^2/8))/2

f = ifourier(-2*exp(-abs(w))) f =-2/(pi*(x^2 + 1))

Page 46: MATLAB Basics

Transfer function representation Using Matlab

• MatLab• >>num = [1 -2 1 -6.3];• >>den = [1 0.05 -3.14];• >>f = tf(num,den)

14.305.0

3.622

23

XX

XXSf

Page 47: MATLAB Basics

Example

Page 48: MATLAB Basics
Page 49: MATLAB Basics

04/21/2023 07:39:44 PM MATLAB PRESENTATION 49

Examples

Page 50: MATLAB Basics

04/21/2023 07:39:44 PM MATLAB PRESENTATION 50

Page 51: MATLAB Basics

04/21/2023 07:39:44 PM MATLAB PRESENTATION 51

Page 52: MATLAB Basics

04/21/2023 07:39:44 PM MATLAB PRESENTATION 52

Page 53: MATLAB Basics

Matlab Programming for Engineers

Introduction to Matlab Matlab Basics Vectors and Matrices Loops Plots MATLAB examples

Page 54: MATLAB Basics

04/21/2023 07:39:44 PM MATLAB PRESENTATION 54

Matrix Index• The matrix indices begin from 1 (not 0 (as in C)) • The matrix indices must be positive integer

Given:

A(-2), A(0)

Error: ??? Subscript indices must either be real positive integers or logicals.

A(4,2)Error: ??? Index exceeds matrix dimensions.

Page 55: MATLAB Basics

04/21/2023 07:39:44 PM MATLAB PRESENTATION 55

Vectors and Matrices• Vectors (arrays) are defined as• >> v = [1, 2, 4, 5]• >> w = [1; 2; 4; 5]

>> A = [1,2,3;4,-5,6;5,-6,7]

Page 56: MATLAB Basics

04/21/2023 07:39:45 PM MATLAB PRESENTATION 56

Vectors and Matrices

• How do we assign values to matrices ?

Columns separated by space or a comma

Rows separated by semi-colon

>>> A=[1 2 3;4 5 6;7 8 9]A = 1 2 3 4 5 6 7 8 9>>>

987

654

321

Page 57: MATLAB Basics

04/21/2023 07:39:45 PM MATLAB PRESENTATION 57

Vectors and Matrices

• How do we access elements in a matrix or a vector?

>>> A(2,3)ans = 6

>>> A(:,3)ans = 3 6 9

>>> A(1,:)ans = 1 2 3

>>> A(2,:)ans = 4 5 6

Page 58: MATLAB Basics

04/21/2023 07:39:45 PM MATLAB PRESENTATION 58

Vectors and Matrices

• Arithmetic operations – Matrices

Performing operations to every entry in a matrix

Add and subtract>>> A=[1 2 3;4 5 6;7 8 9]A = 1 2 3 4 5 6 7 8 9>>>

>>> A+3ans = 4 5 6 7 8 9 10 11 12

>>> A-2ans = -1 0 1 2 3 4 5 6 7

Page 59: MATLAB Basics

04/21/2023 07:39:45 PM MATLAB PRESENTATION 59

Vectors and Matrices

• Arithmetic operations – Matrices

Performing operations to every entry in a matrix

Multiply and divide>>> A=[1 2 3;4 5 6;7 8 9]A = 1 2 3 4 5 6 7 8 9>>>

>>> A*2ans = 2 4 6 8 10 12 14 16 18

>>> A/3ans = 0.3333 0.6667 1.0000 1.3333 1.6667 2.0000 2.3333 2.6667 3.0000

Page 60: MATLAB Basics

04/21/2023 07:39:45 PM MATLAB PRESENTATION 60

Vectors and Matrices

• Arithmetic operations – Matrices

Performing operations to every entry in a matrix

Power>>> A=[1 2 3;4 5 6;7 8 9]A = 1 2 3 4 5 6 7 8 9>>>

A^2 = A * A

To square every element in A, use the element–wise operator .^

>>> A.^2ans = 1 4 9 16 25 36 49 64 81

>>> A^2ans = 30 36 42 66 81 96 102 126 150

Page 61: MATLAB Basics

04/21/2023 07:39:45 PM MATLAB PRESENTATION 61

Vectors and Matrices

• Arithmetic operations – Matrices

Performing operations between matrices>>> A=[1 2 3;4 5 6;7 8 9]A = 1 2 3 4 5 6 7 8 9

>>> B=[1 1 1;2 2 2;3 3 3]B = 1 1 1 2 2 2 3 3 3

A*B

A.*B

393837

262524

131211

xxx

xxx

xxx

272421

12108

321=

=

505050

323232

141414

Page 62: MATLAB Basics

04/21/2023 07:39:45 PM MATLAB PRESENTATION 62

Vectors and Matrices

A./B

0000.36667.23333.20000.35000.20000.20000.30000.20000.1

=

3/93/83/72/62/52/41/31/21/1

A.^B

333

222

111

987

654

321

729512343

362516

321=

Page 63: MATLAB Basics

Tril/triu commands>> a=[1 2 3;4 5 6;7 8 9]a = 1 2 3 4 5 6 7 8 9

>> tril(a)ans =

1 0 0 4 5 0 7 8 9>> triu(a)ans =

1 2 3 0 5 6 0 0 9

Page 64: MATLAB Basics

04/21/2023 07:39:45 PM MATLAB PRESENTATION 64

• To extracts a sub matrix such that it contains all the elements corresponding to row number and column number

54

21

)2:1,2:1(

987

654

321

D

AD

A

Page 65: MATLAB Basics

04/21/2023 07:39:45 PM MATLAB PRESENTATION 65

Long Array, Matrix • t =1:10

t = 1 2 3 4 5 6 7 8 9 10• k =2:-0.5:-1

k = 2 1.5 1 0.5 0 -0.5 -1

• X = [1:4; 5:8]

x = 1 2 3 4 5 6 7 8

Page 66: MATLAB Basics

04/21/2023 07:39:46 PM MATLAB PRESENTATION 66

Generating Vectors from functions• zeros(M,N) MxN matrix of zeros

• ones(M,N) MxN matrix of ones

• rand(M,N) MxN matrix of uniformly distributed

random numbers on (0,1)

x = zeros(1,3)x =

0 0 0

x = ones(1,3)x =

1 1 1

x = rand(1,3)x =0.9501 0.2311 0.6068

Page 67: MATLAB Basics

04/21/2023 07:39:46 PM MATLAB PRESENTATION 67

Concatenation of Matrices• x = [1 2], y = [4 5], z=[ 0 0]

A = [ x y]

1 2 4 5

B = [x ; y]

1 2 4 5

C = [x y ;z] Error:??? Error using ==> vertcat CAT arguments dimensions are not consistent.

Page 68: MATLAB Basics

04/21/2023 07:39:46 PM MATLAB PRESENTATION 68

Indexing Matrices• Indexing using parentheses

>> A(2,3)

• Index submatrices using vectorsof row and column indices >> A([2 3],[1 2])

• Ordering of indices is important!>> B=A([3 2],[2 1])>> B=[A(3,2),A(3,1); A(2,2);A(2,1)]

Page 69: MATLAB Basics

04/21/2023 07:39:46 PM MATLAB PRESENTATION 69

Indexing Matrices(Cond) • Index complete row or column using

the colon operator >> A(1,:)

• Can also add limit index range>> A(1:2,:)>> A([1 2],:)

• General notation for colon operator>> v=1:5>> w=1:2:5

Page 70: MATLAB Basics

Matrix Concatenation Functions

The following functions combine existing matrices to form a new matrix.

Function Description

cat Concatenate matrices along the specified dimension.

horzcat Horizontally concatenate matrices.

vertcat Vertically concatenate matrices.

repmat Create a new matrix by replicating and tiling existing matrices.

blkdiag Create a block diagonal matrix from existing matrices

Page 71: MATLAB Basics

This example constructs a new matrix C by concatenating matrices A and B in a vertical direction

Example : >>A = ones(2, 5) * 6; % 2-by-5 matrix of 6's

>>B = rand(3, 5); % 3-by-5 matrix of random values

>>C = [A; B] % Vertically concatenate A and B

Page 72: MATLAB Basics

Output :C = 6.0000 6.0000 6.0000 6.0000 6.0000 6.0000 6.0000 6.0000 6.0000 6.0000 0.9501 0.4860 0.4565 0.4447 0.9218 0.2311 0.8913 0.0185 0.6154 0.7382 0.6068 0.7621 0.8214 0.7919 0.1763

Page 73: MATLAB Basics

Example :

a =

1 2 3 4 5 6 7 8 9

>> b=repmat(a,2,3)

b =

1 2 3 1 2 3 1 2 3 4 5 6 4 5 6 4 5 6 7 8 9 7 8 9 7 8 9 1 2 3 1 2 3 1 2 3 4 5 6 4 5 6 4 5 6 7 8 9 7 8 9 7 8 9

Page 74: MATLAB Basics

Creating a Block Diagonal Matrix

• The blkdiag function combines matrices in a diagonal direction and all other elements of the matrix are set to zero

>>A = magic(3); >>B = [-5 -6 -9; -4 -4 -2]; >>C = eye(2) * 8;

>>D = blkdiag(A, B, C)

Page 75: MATLAB Basics

• Output:D = 8 1 6 0 0 0 0 0 3 5 7 0 0 0 0 0 4 9 2 0 0 0 0 0 0 0 0 -5 -6 -9 0 0 0 0 0 -4 -4 -2 0 0 0 0 0 0 0 0 8 0 0 0 0 0 0 0 0 8

Page 76: MATLAB Basics

04/21/2023 07:39:47 PM MATLAB PRESENTATION 76

Example

Page 77: MATLAB Basics

04/21/2023 07:39:47 PM MATLAB PRESENTATION 77

Page 78: MATLAB Basics

04/21/2023 07:39:47 PM MATLAB PRESENTATION 78

Page 79: MATLAB Basics

04/21/2023 07:39:47 PM MATLAB PRESENTATION 79

Page 80: MATLAB Basics

04/21/2023 07:39:47 PM MATLAB PRESENTATION 80

Page 81: MATLAB Basics

04/21/2023 07:39:47 PM MATLAB PRESENTATION 81

Diagonal elements

Page 82: MATLAB Basics

04/21/2023 07:39:47 PM MATLAB PRESENTATION 82

fprintf ,Disp commands

Disp(x)Disp(‘string’)

disp(x) displays the arrayIf X is a string, the text is displayed

Ex :z=2+3i;fprintf('z= ');disp(z)

Output :Z= 2+3i

Page 83: MATLAB Basics

04/21/2023 07:39:47 PM MATLAB PRESENTATION 83

Format Code Purpose

%s Format as a string.

%d Format as an integer.

%f Format as a floating point value.

%e Format as a floating point value in scientific notation.

%g Format in the most compact form: %f or %e.

\n Insert a new line in the output string.

\t Insert a tab in the output string.

The fscanf and fprintf commands behave like C scanf and printf functions. They support the following format codes:

Page 84: MATLAB Basics

Fprintf examples :

>> n=2;>> fprintf('value is %d\n',n)

Output:value is 2

fprintf('I have %d brother and %d sister\n',1,1)Output :I have 1 brother and 1 sister

>> fprintf(‘This is %s department , we got %d years of NBA accrediation/n','EEE',5)

Output : This is EEE department ,we got 5 years of NBA accrediation/n>>

Page 85: MATLAB Basics

‘input ‘ command

Example :x=input('enter the value of x');y=input('enter the value of y');z=x+y;fprintf('the value of z is %d\n',z)

Page 86: MATLAB Basics

Output:enter the value of x30enter the value of y0the value of z is 30

Page 87: MATLAB Basics

Input

Write the program to display 6th table

6*1=66*2=126*3=186*4=246*5=306*6=366*7=426*8=486*9=546*10=60

Page 88: MATLAB Basics

n=input('enter n value');for i=1:10 fprintf('%d*%d=%d\n',n,i,n*i)end

Page 89: MATLAB Basics

Importing data files into MATLAB

1.First create text file with name ‘data’2.In matlab file , load data.txt