📄 tutor1.m
字号:
% ADSP Toolbox: Version 2.0
% For use with "Analog and Digital Signal Processing", 2nd Ed.
% Published by PWS Publishing Co.
%
% Ashok Ambardar, EE Dept. MTU, Houghton, MI 49931, USA
% http://www.ee.mtu/faculty/akambard.html
% e-mail: akambard@mtu.edu
% Copyright (c) 1998
clc,echo on
% MATLAB - A TUTORIAL INTRODUCTION
%MATLAB is an interactive and programmable matrix-manipulation program which
%allows numerical evaluation of scientific problems (entered into MATLAB
%much the same way as they might be on paper). This extremely powerful
%program relies on a variety of numerically well behaved (and state of the
%art) routines for performing a large number of mathematical operations.
%The command prompt is the symbol >>. A list of available functions and
%commands may be displayed by typing "help" (all commands
%are to be followed by enter, of course). To list a brief description of a
%specific command, type "help" followed by the name of the command
%To get help on the function tan we type
help tan
pause %strike a key to continue
%GETTING OUT OF MATLAB
%Typing either "exit" or "quit" at the command prompt will get you out of
%the program and back to the operating system (e.g. DOS).
%AN IMPORTANT NOTE
%MATLAB is normally case-sensitive.All built-in commands are in lower case.
%The commands "casesen off" or "casesen on" make it case insensitive or
%otherwise.
%THE BASICS
%Let us now begin at the beginning by explaining how to enter commands.
%A knowledge of the simple operations "+, -, *, /" used by MATLAB to denote
%the usual operations of addition, subtraction, multiplication and division
%are all we shall need for the moment.(we shall have more to say about
%their quirks later, of course).
pause %strike a key to continue
clc
%Consider the MATLAB command
%sin(0.25*pi)
%Note that (a)"pi" is a built in constant, (b) "sin" is the built in
%function that returns the sine of an angle, (c) angles are accepted (and
%returned) in radians and not degrees and (d) numbers can be entered in
%almost any format such as 0.25, 1/4 or 2.5e-1.
%On pressing the ENTER key this command is instantly executed, as is every
%other command "entered" at the command prompt, and MATLAB responds with the
%on-screen display
%ans
%= 0.7071
sin(0.25*pi)
%This result corresponds to sin(45 deg). Even though it is displayed to four
%digit accuracy, MATLAB actually performs all numeric computations in double
%precision. Results can be displayed in different formats. More on that later.
pause %strike a key to continue
%Getting back to the answer, note that it is stored in the
%variable "ans", since no variable was specified on the command line. One
%way to assign the result to a variable s say, is as follows
%s=ans
%This will result in the display
%s
%= 0.7071
s=ans
%Or we may enter the following
s=sin(pi/4)
pause %strike a key to continue
%You can use any legal variable names, even "pi" if you wish e.g. pi=s
%But if you do, remember that user defined variables take precedence over
%those used within MATLAB. Be warned that "pi" will no longer perform
%the function intended by MATLAB but represent the value assigned to it by s
%until you clear it from memory by issuing the command "clear pi" from the
%command prompt This restores the intended default to the variable "pi"
%It is poor practice to use variable names already reserved by MATLAB.
%Upon execution of a command, MATLAB always returns with the command prompt
pause %strike a key to continue
clc
%The variable "ans" can, of course, be manipulated like any other variable
%Consider the following statements
exp(-1) %The exponential quantity e^(-1)
ans*exp(1) %Ans here is e^(-1) so this should yield 1
ans*2 %Ans here is 1, so this should yield 2
%NOTES: 1.The variable "ans" always stores results of the most recent command.
%2.Comments may be inserted with any command following the percent sign "%"
pause %strike a key to continue
clc
%FORMAT
%MATLAB displays results in short format even though all results are stored
%in double precision
%To see all subsequent results in in double precision scientific, use
format long e
%If we now display the variable s which equals sin(pi/4), it will result in
s
%To revert to the default format, use
format
s
pause %strike a key to continue
clc
%ARRAYS OR ROW VECTORS
%Arrays or rows of values can be generated by entering values separated by
%commas or spaces and enclosed in square brackets. The statement
x=[1 3 5 7] %stores the numbers 1 3 5 7 in the variable x
%THE ELLIPSIS
%An array list longer than one line can be continued on the next by using
%an ellipsis (... i.e. two or more periods followed by a carriage return)
%No MATLAB prompt or display will appear until the enter key is pressed
%again. In the following command, the first line contains an ellipsis followed
%by a carriage return. The second line is also followed by a carriage return
%Only after the second line is entered is the command executed
x=[1 2 3 4 ...
5 6]
pause %strike a key to continue
clc
%THE COLON
%Generation of arrays is made painless using the colon ":". Thus
x=1:6
%yields the array [1 2 3 4 5 6]
%The default increment is one. For a different increment, use for example
y=0.2:.2:1.1
%yields the array [.2 .4 .6 .8 1.0]
pause %strike a key to continue
clc
%THE SEMI-COLON
%The semi-colon ";", used after a command is equally useful. It actually
%suppresses the on-screen display of results (but not the execution of a
%command). Thus the command z=1:300; generates an array with values from 1
%to 300 and simply returns to the MATLAB prompt upon execution without
%displaying the values on the screen. The result is
z=1:300;
%The variable z does indeed exist in the workspace. For example
z(1) %the first element of the array z which should equal 1
pause %strike a key to continue
clc
%ABORTING DISPLAYS OR EXECUTION
%Clearly, for large matrices it could get tiresome to wait for the entire
%array to be displayed if the semi-colon is not used. If you forget and want
%to abort the display of a variable, typing "CTRL-C" (typing C while
%holding the CTRL key pressed) returns you to the MATLAB prompt without
%affecting the variable whose values were being displayed.
%Actually, typing"CTRL-C" aborts the currently executing command or
%operation and is therefore also very useful if you want to abort and
%terminate an unintended command if it has not been already executed
pause %strike a key to continue
clc
%THE COMMA, SEMI-COLON AND CONCATENATION
%More that one command can be included in a single line provided the
%commands are separated by commas (which do not suppress the on-screen
%display of the preceding command) or semi-colons (which do).
x=2,y=3*x*x;z=y-6*x %This will display x and z but not y
%Note that the semi-colon suppresses display of the second command
pause %strike a key to continue
clc
%VARIABLES AND MATRICES
%Every variable in MATLAB is regarded as a matrix , even if its dimensions
%are 1*1 (a single elemen). No dimensioning (or type declaration) is
%required and MATLAB automatically allocates the appropriate storage. Index
%values for matrices always start at one (and not zero as with some
%computer languages). Individual elements are addressed by their row and
%column indices (as in A(2,3), the element in row 2 and column 3). If you
%execute the following statement
avar(2,2)=3
%Notice how MATLAB has recognized a(2,2) as the element of a matrix and
%assigned enough storage to avar which it recognizes as a 2*2 matrix. Now
pause %strike a key to continue
%if we enter
avar(2,3)=4
%storage is automatically allocated to avar based on the element of
%avar that is encountered.
pause %strike a key to continue
%Element values can be changed. For example
avar(1,2)=5
%Elements of a matrix may be entered by rows, with elements separated by
%spaces (or commas) and rows separated by semi-colons, all within square
%brackets. The command
b=[1 2 4; 3 1 2] %results in a 3x2 matrix
%NOTE: In this format, all rows must have the same number of elements.
pause %strike a key to continue
clc
%THE COLON AGAIN
%A colon is used to denote an entire range of values. For example, A(2,3)
%denotes one element of matrix A while A(2,:) denotes the entire second row
%of A, regardless of how many columns there are. Enter the command
c=b(2,:) %assigns the entire 2nd row of b to the variable c
%Similarly
b(:,3) %denotes the entire third column of b
pause %strike a key to continue
clc
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -