Title: EGR 106 Week 8 Data Files
1EGR 106 Week 8 Data Files Functions
- Interacting with Data Files
- Functions
- Concept
- Examples and applications
- Textbook chapter 4.4-4.6.1, 4.7-4.8 and chapter
6.1-6.7, 6.10
2Importing/Exporting Data
- Saving data
- save filename
- save filename array1 array2
- save filename ascii
- Reading in (loading) data
- load filename
- load filename array1 array2
- load filename ascii
Can Independently Create Data File in Most Any
Program such as Word, WordPad, Notepad
3Can Easily Create Data Files in Notepad
Save File for Future Use
Simply Type in Numbers and Save
4Function Concept
- So far
- Have used Matlabs built-in functions
- Have started writing scripts
- Function computes an output from an input
- Reusable script
- Sometimes called a subprogram
- Building block for larger programs
- Example converting degrees to radians
5Example Function DEG2RAD
6Usage
- Syntax is just like a built-in functions
- Application is independent of the variable names
within the function (x,y) - Executed by typing name (input)
7Rules for Functions
- First line of the file must be of the form
- function outputs name(inputs)
List of any variables that the function needs
Identifies a function file
List of function result variables
Name of the function and the file (name.m)
8- inputs
- Used to transfer data into the function from the
workspace - Workspace variables are unavailable within the
function - Any necessary variables must be brought in
- For multiple inputs
- Separate them by commas
- Order is important
- Examples of built-in functions with inputs
- sum(x) plot(x,y)
9- outputs
- Used to transfer results back into the workspace
from the function - For multiple outputs
- Separate them by commas in brackets
- Order is important
- Output variables must be assigned
- Examples of built-in functions with outputs
- y sum(x)
- value,location max(x)
10- Note brackets on the left only make sense for
functions - value,location max(x) is okay
- value,location 1, 2 is not
- Default output is the first one
- value,location max(x)
- value max(x)
11- Comments in lines 2,
- Words in line 2 are searched when lookfor is
employed - Comments in lines 2, 3, are returned when help
name is executed
12Variables Local vs Global
- Usually, once created, variables are available in
the workspace until cleared - Functions create their own workspace with their
own local variables distinct from those in the
original workspace - Functions cannot modify variables within the
original workspace except through outputs - Exception global variables can span both
workspaces and be manipulated in both
13Example Functions
- Consider a script to compute the area of a
triangle - First as a script
14(No Transcript)
15 Now as a function
16- Usage doesnt depend on knowing parameter names
internal to the program
17- Could add the perimeter calculation as a second,
optional output
18 19(No Transcript)
20- Can stack functions in one file (all must be
functions) - Useful for mailing and testing
- Must start
- m-file with
- function . . .that could be a main program
used to call other functions
21Typical Errors
Too few inputs
22 Too many inputs
Too many outputs
Wrong input type funny result
23Application f(x) 2e-xsin(x)e-x/2sin(2x)
- Find its minimum and the first root beyond zero
x ?
f(x) ?
24Solution using Matlab
- Construct a function m-file for f(x)
-
25- To find the root fzero('fun',a) (a nearby
value) - To find the minimum fminbnd('fun',a,b)
- (a,b range)