MATLAB Programs For Beginners. | Abhi Sharma

Preview:

DESCRIPTION

This is MATLAB's 10 most easy & most basic programs that I's supposed to submit in my practicals. In this document I've complied 10 MATLAB programs from basic to advanced through intermediate levels, But overall they are for beginners only. It's only a 26 pages doc. for academic purposes. well, What else a student can offer you, huh? LOLz

Citation preview

      

SRI SAI INSTITUTE OF ENGG. AND TECHNOLOGY

 

 

 

      

     MATLAB PRACTICAL FILE  

DSP ECE - 316  

Submitted By: 

Abhi Sharma
Typewritten Text
Abhi Sharma
Typewritten Text
Abhishek Sharma
Abhi Sharma
Typewritten Text
Abhi Sharma
Typewritten Text
Abhi Sharma
Typewritten Text
Abhi Sharma
Typewritten Text
ECE - 6th Sem.
Abhi Sharma
Typewritten Text
Abhi Sharma
Typewritten Text
Abhi Sharma
Typewritten Text
Abhi Sharma
Typewritten Text

TABLE OF CONTENTS 

Contents

InroductionToMATLAB_____________________________________________________________________1

ProgramForImpulseFunction_____________________________________________________________4

ProgramForUnitStepFunction____________________________________________________________6

ProgramForUnitRampFunction__________________________________________________________8

ProgramForExponentialFunction______________________________________________________10

ProgramForRealValueFunction________________________________________________________16

ProgramForShiftingFunction____________________________________________________________14

ProgramForAdditionFunction___________________________________________________________16

ProgramForMultiplicationFunction____________________________________________________18

ProgramForConvolutionFunction______________________________________________________20

ProgramForFoldingFunction____________________________________________________________23

1   

 

WHATISMATLAB?“ANINTRODUCTION”

 

• ItstandsforMATrixLAbORATORY

• ItisdevelopedbyTheMathworksInc.

• Itisaninteractive,integrated,environment

• Fornumericalcomputations

• Forsymboliccomputations

• Forscientificvisualizations

• Itisahighlevelprogramminglanguage

• Programrunsininterpreted,asopposedtocompiled,mode

• MATLAB is a high level technical computing language and interactive environment for

algorithmdevelopment,datavisualization,dataanalysisandnumericcomputation. Usingthe MATLAB product, you can solve technical computing problems faster than the

traditionalprogramminglanguagessuchasC,C++andFORTRAN.

• YoucanuseMATLABinawiderangeofapplications,includingsignalandimageprocessing,communication,controldesign,testandmeasurement,financialmodelingandanalysis,and

computationalbiology.Addontoolboxes(collectionofspecialpurposeMATLABfunctions,available separately) extend the MATLAB environment to solve particular classes of

problemsintheseapplicationareas.

• MATLABprovidesanumberof features fordocumentingandsharingyourwork.Youcanintegrate yourMATLAB codewith other languages and applications, and distribute your

MATLABalgorithmsandapplications. 

 

 

 

 

 

 

 

2   

 

Characterstics Of MATLAB:  

• ProgrammingLanguageBased(principally)OnMatrices.

• SlowcomparedwithFORTRANorCbecauseitisaninterpretedlanguage,i.enotpre‐compiled.Avoidforloops,insteadusevectorformwheneverpossible.

• Automaticmemorymanagement,i.eyoudon’thavetodeclarearraysinadvance.

• Intuitive,easytouse.

• Compact(arrayhandlingisFortran90‐like).

• ShorterprogramdevelopmenttimethantraditionalprogramminglanguagessuchasFORTRANandC.

• CanbeconvertedintoCcodeviaMATLABcompilerforbetterefficiency.

• Manyapplications‐specifictoolboxesavailable.

• CoupledwithMapleforsymboliccomputations.

• Onshared‐memoryparallelcomputerssuchastheSGIOrigin2000,certainoperations

processedinparallelautonomouslywhencomputationloadwarrants.

KEY FEATURES:-  

• Highlevellanguagefortechnicalcomputing.

• Developmentenvironmentformanagingcode,files,anddata.

• Interactivetoolsforiterativeexploration,designandproblemsolving.

• Mathematicalfunctionsforlinearalgebra,statistics,Fourieranalysis,filtering,optimization,andnumericalintegration

• 2‐Dand3‐Dgraphicalfunctionsforvisualizingdata.

• Toolsforbuildingcustomgraphicaluserinterfaces.

• FunctionsforintegratingMATLABbasedalgorithmwithexternalapplicationandlanguages,

suchasC,C++,FORTRAN,Java,andMicrosoftExcel.

 

 

 

 

 

3   

 

EXAMPLES:-  

• Matrixcomputationandlinearalgebra.

• Solvingnonlinearequation.

• Numericalsolutionofdifferentialequation.

• Mathematicaloptimization.

• Statisticalanddataanalysis.

• SignalProcessing.

• Modelingofdynamicalsystems.

• Solvingpartialdifferentialequation.

• SimulationofEngg.Systems.

USESINENGG.COMPANIES:‐ 

• Numericalanalysis

• Signalandsystem.

• Modelingofdynamicalsystems.

• Automaticcontrol.

BASICCOURSES:‐ 

• Automaticcontroladvancedcourse.

• Hybridandembedded.

• Controlsystem.

• Chemicalprocesscontrol.

• Controlprocesscontrol.

• Signaltheory.

• Digitalsignalprocessing.

• Adaptivesignalprocessing.

• Signalprocessingproject.

• Communicationtheory.

• Advancecommunicationtheory.

 

4   

 

Program - 1

To Develop Elementary Signal For Impulse Function  

Program: 

a=[‐2;1;2] 

b=[zeros(1,2),ones(1,1),zeros(1,2)] 

stem(a,b) 

xlabel(‘a‐‐‐‐>’) 

ylabel(‘amp‐‐‐>’) 

 

Result:  

a= ‐2   ‐1    0    1    2 

 

b= 0    0    1    0    0 

 

 

 

 

 

 

5   

 

Graph For Impulse Function:  

 

 

 

 

 

 

 

 

 

 

 

6   

 

Program - 2

To Develop Elementary Signal For Unit Step Function  

Program:  

n=input(’enter the value of n’) 

a=[1:1:n] 

b=[ones,n] 

subplotes 

stem(a,b) 

xlabel(‘n…..>’) 

ylabel(‘amplitude’) 

 

 

Result of unit step function: 

Enter the value of n 

n=5 

a=0  1  2  3  4 

b= 1   1   1   1   1 

 

 

                                                                                               

 

 

7   

 

Graph For Unit Step Function: 

8   

 

Program - 3  

To Develop Elementary Signal For Unit Ramp Function  

Program: 

a=[2:1:8] 

b=[0;1;6] 

subplot 

stem(a,b) 

xlabel(‘n.’) 

ylabel(‘amp….’) 

 

 

Result of unit ramp function: 

a=2    3    4    5    6    7    8 

 

b= 0    1    2    3    4    5    6   

 

 

 

 

 

 

9   

 

Graph For Unit Ramp Function: 

10   

 

Program - 4

To Develop Exponential Function Of (Given) Sequence  

Program: 

n=input(‘enter the value of n’) 

a=input(‘enter the value of a’) 

t=[0:1:n] 

y=exp(a*t) 

subplot 

stem(t,y) 

xlabel(‘a’) 

ylabel(‘n’) 

 

Result of exponential: Enter the value of n10 

n= 10 

enter the value of a0.5 

a= 0.5000 

t=0   1   2   3   4   5   6   7   8   9   10 

y=columns 1 through 10 

1.0000  1.6487  2.7183  4.4817  7.3891  12.1825  20.0855  33.1155  54.5982  90.0171 

Column11 

148.4132 

11   

 

Graph For Exponential Function: 

12   

 

Program - 5

To Develop Elementary Signal For Real Value  

Program:  

n=[0,1,2,3,4,5] 

a=[0.5] 

y=a.^n 

subplot 

stem(n,y) 

xlabel(‘n…..’) 

ylabel(‘a’) 

 

Result of Real Value No.: 

n= 0   1   2   3   4   5   

 

a= 0.5000 

 

y = 1.0000   0.5000   0.2500   0.1250   0.0625   0.0313 

 

 

13   

 

Graph For Real Value Function:

14   

 

Program - 6

To Develop Elementary Signal For Shifting Program:  

a=[‐3:1:3] 

b=[1.2.3.2.1.1.2] 

subplot(3,1,1) 

stem(a,b) 

xlabel(‘n‐‐‐‐>’) 

ylabel(‘amp‐‐‐>’) 

a=‐a 

subplot(3,1,2) 

stem(a,b) 

xlabel(‘n‐‐‐‐>’) 

ylabel(‘amp‐‐‐>’) 

 

Result:  

a = ‐3   ‐2   ‐1   0   1   2   3 

b = 1   2   3   2   1   1   2 

a = 3   2   1   0   ‐1   ‐2   ‐3 

 

 

15   

 

 

Graph For Shifting Function:  

 

 

 

 

 

 

 

 

 

 

 

16   

 

 

Program - 7

To Develop Elementary Signal For Addition Of Two Sequences 

 

Program:  

n=[‐3:1:3] b=[2,3,0,1,3,2,1] subplot(5,1,1) stem(n,b) xlabel('n….>')    ylabel('amplitude') title('input of signal b') a=[3,4,5,6,7,8,9] subplot(5,1,3) stem(n,b) ylabel('amplitude') title('input of signal a') z=b+a subplot(5,1,5) stem(n,a) xlabel('n….>')    ylabel('amplitude') title('addition of two signal is z(n)') 

Result of Addition:  

2   3   0   1   3   2   1 

 

a = 3   4   5   6   7   8   9 

 

z = 5   7   5   7   10   10   10 

17   

 

Graph For Addition Function: 

 

                                                                                  

 

 

 

 

 

 

18   

 

Program - 8

To Develop Elementary Signal For Multiplication Of Two Sequences 

 

Program: 

n=[‐2:1:3] x=[1,2,3,4,5,6] subplot(3,1,1) stem(n,x) xlabel('n‐‐‐‐>') ylabel('amp‐‐‐>') y=[2] z=(x*y) subplot(3,1,2) stem(n,z) xlabel('n‐‐‐‐>') ylabel('amp‐‐‐>') 

Result:  

n = ‐2   ‐1   0   1   2   3 

x = 1   2   3   4   5   6 

y = 2 

z = 2   4   6   8   10   12 

19   

 

Graph For Multiplication Function: 

20   

 

Program - 9

To Develop The Elementary Signal For Convolution Of Two Sequences 

 

Program:  

X=input(‘enter the value of x’) 

h=input(‘enter the value of h’) 

y=conv(x,h) 

subplot(3,1,1) 

stem(x) 

xlabel(‘n….>’)    

ylabel(‘amplitude….>’) 

subplot(3,1,2) 

stem(h) 

xlabel(‘n….>’)    

ylabel(‘amplitude….>’) 

subplot(3,1,3) 

stem(y) 

xlabel(‘n….>’)    

ylabel(‘amplitude….>’) 

 

21   

 

Result of convolution:  

Enter the sequence of x[1,2] 

X=1   2 

Enter the sequence of h[1,2,3,4]  

h = 1   2   3   4 

y = 1   4   7   10   8 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

22   

 

Graph For Convolution Function:  

 

 

 

 

 

 

 

 

 

 

23   

 

Program - 10

To Develop Elementary Signal For Folding  

Program: 

a=[‐3:1:3] 

b=[1,2,3,2,1,1,2] 

subplot(3,1,1) 

stem(a,b) 

xlabel(‘n….. >’) 

ylabel(‘amp…..>’) 

a= ‐a 

subplot(3,1,2) 

stem(a,b) 

xlabel(‘n…..>’) 

ylabel(‘amp…..>’) 

 

Result of Folding: 

a= ‐3   ‐2   ‐1   0    1    2    3 

b=  1    2    3    2    1    1     2 

a=  3    2    1    0   ‐1   ‐2   ‐3  

 

 

24   

 

Graph For Folding Function: