CSE123 Lecture 3 - PowerPoint PPT Presentation

Loading...

PPT – CSE123 Lecture 3 PowerPoint presentation | free to download - id: 788777-NDI1M



Loading


The Adobe Flash plugin is needed to view this content

Get the plugin now

View by Category
About This Presentation
Title:

CSE123 Lecture 3

Description:

CSE123 Lecture 3 Files and File Management Scripts – PowerPoint PPT presentation

Number of Views:9
Avg rating:3.0/5.0
Slides: 29
Provided by: PCB63
Category:

less

Write a Comment
User Comments (0)
Transcript and Presenter's Notes

Title: CSE123 Lecture 3


1
CSE123 Lecture 3
  • Files and File Management
  • Scripts

2
Files and File Management
  • Matlab provides a group of commands to manage
    user files
  • pwd Print working directory displays the full
    path of the present working directory.
  • cd path Change to directory (folder) given by
    path, which can be either a relative or absolute
    path.
  • dir Display the names of the directories
    (folders) and files in the present working
    directory.
  • what Display the names of the M-files and
    MAT-files in the current directory.
  • delete file Delete file from current directory
  • type file Display contents of file (text file
    only, such as an M-file).

3
Saving and Restoring Matlab Information
  • It is good engineering practice to keep records
    of calculations. These records can be used for
    several purposes, including
  • To revise the calculations at a later time.
  • To prepare a report on the project.

Diary Command The diary commands allows you to
record all of the input and displayed output from
a Matlab interactive workspace session. The
commands include diary file Saves all text
from the Matlab session, except for the prompts
(gtgt), as text in file, written to the present
working directory. If file is not specified, the
information is written to the file named diary.
diary off Suspends diary operation. diary on
Turns diary operation back on. diary Toggles
diary state
4
Saving and Restoring Matlab Information
Example gtgt diary roots gtgt a1 gtgt b5 gtgt
c6 gtgt x -b/(2a) gtgt y sqrt(b2-4ac)/(2a)
gtgt s1 xy s1 -2 gtgt s2 x-y s2 -3
The file roots is written in your current working
directory. It can be displayed by Matlab command
type roots.
5
Storing and Loading Workspace Values
save Stores workspace values (variable names,
sizes, and values), in the binary file matlab.mat
in the present working directory save data
Stores all workspace values in the file
data.mat save data_1 x y Stores only the
variables x and y in the file data_1.mat load
data_1 Loads the values of the workspace values
previously stored in the file data_1.mat
6
Script M-Files
  • Group of Matlab commands placed in a text file
    with a text editor.
  • Matlab can open and execute the commands exactly
    as if they were entered at the Matlab prompt.
  • The term script indicates that Matlab reads
    from the script found in the file. Also called
    M-files, as the filenames must end with the
    extension .m, e.g. example1.m.

7
Script M-Files
Example Create the file named qroots.m in your
present working directory using a text
editor qrootsQuadratic root finding script
format compact a1 b5 c6 x
-b/(2a) ysqrt(b2-4ac)/(2a) s1 xy s2
x-y
To execute the script M-file, simply type the
name of the script file qroots at the Matlab
prompt gtgt qroots a 1 b 5 c 43 6 s1 -2 s2
-3
8
Effective Use of Script Files
1. The name must begin with a letter and may
include digits and the underscore character. 2.
Do not give a script file the same name as a
variable it computes 3. Do not give a script file
the same name as a Matlab command or function.
To check existence of command, type
exist(rqroot). This command returns one of the
following values 0 if rqroot does not exist 1
if rqroot is a variable in the workspace 2 if
rqroot is an M-file or a file of unknown type in
the Matlab search path .
9
Effective Use of Script Files
4. All variables created by a script file are
defined as variables in the workspace. After
script execution, you can type who or whos to
display information about the names, data types
and sizes of these variables. 5. You can use the
type command to display an M-file without opening
it with a text editor. For example, to view the
file rqroot.m, the command is type rqroot.
10
Matlab Search Path, Path Management
Matlab search path Ordered list of directories
that Matlab searches to find script and function
M-files stored on disk. Commands to manage this
search path matlabpath Display search
path. addpath dir Add directory dir to beginning
of matlabpath. If you create a directory to store
your script and function M-files, you will want
to add this directory to the search path. rmpath
dir Remove directory dir from the matlabpath.
11
  • Different types of Variables Logical operators,
    Conditional Statements and If Blocks

12
Different types of Variables
Numerical Variables
  • Integer.
  • positive whole numbers 1, 2, 3,...
  • negative whole numbers -1, -2, -3,...
  • zero 0

Matrix index (ex B(2,1) ) Counters
  • Real. real number.

All calculus results
  • Complex. a b i
  • a and b are real numbers
  • i is an imaginary number. ( i2 -1 )

Complex calculus Geometry Vector calculus
Matlab Notation N abi or Nabj
13
Different types of Variables
Character/string Variables
  • Character/string.
  • Strings of alphanumeric elements

All labels and titles. Filenames
Matlab Notation Astring
Strings and characters follow the same rules as
other matrices, with each character counting for
one element.
14
Different types of Variables
Logical Variables
  • Logical Variables or Boolean. Logical
    expression with 2 states
  • 0 or 1
  • which means false or true

Condition statements Decision making
15
Structured Programming
Structured Programming
Sequential Programming
Initialization
Initialization
Input
Calculation
?
Results
16
Relational Operators
  • Decision making uses comparison of logical
    variables
  • Comparison is done by creating logical
    expressions

Format of SIMPLE Logical Expressions
expression1 relational-operator expression2
relational-operator Comparison
Is equal to
gt Is greater than
lt Is smaller than
gt Is greater or equal to
lt Is smaller or equal to
Is not equal to
ans 0
ans 0
gtgt AgtB
ans 1
gtgt AltB
ans 0
gtgt AgtB
ans 1
gtgt AltB
ans 1
gtgt AB
17
Logical Operators
Format of COMPOUND Logical Expressions   (exp1
relational-op exp2) Logical operator (exp3
relational-op exp4)
Logical operator operation
and
or
xor or (exclusive)
not
A B C AB
0 0 0
0 1 1
1 0 1
1 1 1
(AB)
1
0
0
0
A B C AB
0 0 0
0 1 0
1 0 0
1 1 1
A B C xor(A,B)
0 0 0
0 1 1
1 0 1
1 1 0
(AB)
1
1
1
0
xor(A,B)
1
0
0
1
18
Logical Variables
ans 0
ans 0
gtgt (AltB) (AB)
gtgt (AB) (AgtB)
ans 0
ans 1
gtgt (AltB) (AB)
gtgt xor( (AB), (AltB) )
ans 1
ans 0
gtgt xor( (AB), (AltB) )
gtgt (AltB)
ans 0
gtgt (AgtB)
ans 1
gtgt (Agt0) (BgtA)
ans 1
gtgt (Agt0) (BgtA)(Blt0)
ans 0
19
Structured Programming
 Format of if statement   if Logical
Expression Statements
end
 Format of if else statement   if
Logical Expression Statement 1
else Statement 2
end
20
Structured Programming
Example iftest1.m
Program to test the if statement
1 Xinput(Enter value for x) if Xgt0
Ysqrt(X) fprintf(The squareroot of 3.2f
is 4.3f,X,Y) end
Initialization
Input X
False
If Xgt0
gtgtiftest1 Enter value for x 9 The squareroot of
9.00 is 3.0000
True
Calculate
Display Result
gtgtiftest1 Enter value for x -2 gtgt
End of script
21
Structured Programming
Example iftest2.m
Program to test the if statement
2 Xinput(Enter value for x) if Xgt0
Ysqrt(X) fprintf(The squareroot of 3.2f
is 3.4f ,X,Y) else disp(x is negative
there is no real result) end
Initialization
Input X
False
If Xgt0
gtgtiftest2 Enter value for x 3 The squareroot of
9.00 is 3.0000 gtgtiftest2 Enter value for x -2 x
is negative there is no real result gtgt
True
Calculate
Display NO Result
Display Result
End of script
22
Structured Programming
Format of if elseif else statement  
if Logical Expression Statements
1 elseif Logical Expression
Statements 2 else
Statements 3 end
23
Structured Programming
Example iftest3.m
Program to test the if statement
3Xinput(Enter value for x)if Xgt0
disp(x is positive) elseif Xlt0 disp(x
is negative) else disp(x equal 0) end
Initialization
Input X
False
If Xgt0
False
True
If Xlt0
Display Result gt0
True
gtgtiftest3 Enter value for x 3 x is
positive gtgtiftest3 Enter value for x -2 x is
negative
Display Result lt0
Display Result 0
End of script
24
Structured Programming
nesting
  • Problem
  • Pick a random number N
  • (-2ltNlt2)
  • Calculate B

nested if statements example N
rand(1)4-2 if Ngt0 Alog(N) if
Agt0 Bsqrt(A) end end
nested if statements example N
rand(1)4-2 if Ngt0 Alog(N) if
Agt0 Bsqrt(A) end end
  • If N positive calculate Alog(N)
  • if A positive calculate Bsqrt(A)

25
Structured Programming
The SWITCH structure
  switch variable case test1 Statement
1 case test2 Statement 2 .. otherwise
Statement n end
Switch
Statement3
Statement n
Statement1
Statement4
Statement2
26
The SWITCH structure
program to test switch Ainput('Your choice
1,2 3 ? ') switch A case 1
disp('Choice 1') case 2
disp('Choice 2') case 3
disp('Choice 3') otherwise
disp('Wrong choice') end
gtgt Testswitch Your choice 1,2 3 ? 1 Choice 1
gtgt Testswitch Your choice 1,2 3 ? 2 Choice 2
gtgt Testswitch Your choice 1,2 3 ? 3 Choice 3
gtgt Testswitch Your choice 1,2 3 ? 7 Wrong choice
27
Example1
  • Write a script example.m to find roots of a
    second order equation
  • ax2bxc0.
  • When the script is executed it will
  • ask the user enter the coefficients a,b,c
  • calculate discriminant
  • calculate the roots and display the case
    according to sign of discriminant.

28
Example2
  • Write a script that allows a user to enter a
    string containing a day of a week (Sunday,
    Monday etc) uses a switch construct to convert
    the day to its corresponding number, where Monday
    is the first day of the week.
  • Print out the resulting day number. Also be sure
    to handle the case of an illegal day name.
About PowerShow.com