Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
6 views

matlabnoteschap04

Uploaded by

Marwa AlFaouri
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views

matlabnoteschap04

Uploaded by

Marwa AlFaouri
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 32

Chapter 4: Programming with MATLAB

Topics Covered:

• Programming Overview
• Relational Operators and Logical Variables
• Logical Operators and Functions
• Conditional Statements
• For Loops
• While Loops
• Debugging MATLAB programs
Programming Overview:
MATLAB programming can be used to solve very computationally
intensive problems which may require thousands or hundreds of
thousands of calculations. Operations can be:
• Sequential: Calculations are executed in order from the top down.
• Conditional: Calculations are made based on the answer (either true or
false) to a question.
• Iterative: Calculations are made over and over until a condition is met.
Sequential Conditional (If-Then) Iterative (For Loops) Iterative (While Loops)

Statement
Group 1

Statement
Group 2

Statement
Group 3
Relational Operators and Logical Variables:
Relational Operators make comparisons between numbers or arrays.
The result of a comparison is either:
• = 0 (if the comparison is false) or
• = 1 (if the comparison is true)
The result can be used as a variable. When used to compare arrays, the
relational operators compare the arrays on an element-by-element basis.
The arrays must have the same dimension. When comparing an array to a
scalar, all of the elements of the array are compared to the scalar.
Problem 4.4:
Suppose that x = 6. Find the
results of the following
operations by hand and use
MATLAB to check your results.
Problem 4.6:
Suppose that 𝑥 = 10, −2, 6, 5, −3 and 𝑦 = 9, −3, 2, 5, −1 . Find
the results of the following operations by hand and use MATLAB to
check your results.
Problem 4.8:

Use the find and


length commands

What values are over


20? Use MATLAB to
find them.
Logical Operators and Functions:
MATLAB has five Logical Operators (or Boolean Operators).
Problem 4.12:
Problem 4.12:
Step 1: Create plots of the height and speed
versus time.
Problem 4.12:
Step 2: Use the MATLAB relational and logical operators to find the
times when the height is no less than 15 m.
Problem 4.12:
Step 3: Use the MATLAB relational and logical operators to find the
times when the height is no less than 15 m and the speed is
simultaneously no greater than 36 m/s.
If Statements:
The Conditional Operators (If Statements)
use Relational Operators:

< Less than


<= Less than or equal to
> Greater than
>= Greater than or equal to
== Equal to
~= Not equal to

The result of these Relational Operators is


either True or False (1 or 0). This can be
used to control the flow of a program. This is
called Logic Flow, which can be represented
by a Flowchart.
If Statements:
Create the following MATLAB program.
Once you’ve checked that it is working
correctly, switch the values of x and y.
Nested If Statements:
Create the following MATLAB program. In
order to compute the value of z, both Logical
Expressions must return a True value. Once
𝑥>0
you’ve checked that it is working correctly,
change the values of x and y to zero.

𝑦>0

Compute 𝑧
If-Else Statements:
If-Else Statements provide
two options based on the result
of the Logical Expression.
Create the following MATLAB
program. Once you’ve checked
that it is working correctly,
change the value of x to 50.
If-Elseif-Else Statements:
This is the General Form
of the if statement. Create
the following MATLAB
program. Once you’ve
checked that it is working
correctly, change the
value of x to 5 and then to
7.
Problem 4.16:
Write a script file using Conditional If-Elseif-Else statements to
evaluate the following function, assuming that 𝑥 = −2, 0, and 6. The
function is:
𝑒 𝑥+1 for 𝑥 < −1
𝑦 = 2 + cos 𝜋𝑥 for − 1 ≤ 𝑥 ≤ 5
10 𝑥 − 5 + 1 for 𝑥 > 5
For Loop:
The For Loop is a structure that
repeats a set of commands or
calculations a specified number of
times. Create the following
MATLAB program. In this case,
the variable x is a scalar.
For Loop:
The For Loop can be used to
Load a Vector with values. The
Counter k is used to Index
through the vector elements.
• What happens if you don’t
Initialize x? [Comment out x(1)
= 3 and rerun]
• How many elements does x
have?
• What change would you make if
you wanted x to have only 3
elements?
Debugging Tool:
Click on the Horizontal Lines to
the right of the line numbers. This
creates Breakpoints on the lines
of code.

When you hit Run, the Editor


Bar changes to the following:
Debugging Tool:
The Editor Window and the Command Window change as well. The
Green Arrow indicates the line that is going to be executed next:
Debugging Tool:
Click on the Continue button to step
through the program. The values of
the variables appear in the Command
Window.

Notice how the vector x is loaded as


you step through the for loop.

You can stop execution and


Debugging by clicking on the red
Quit Debugging button.
Debugging Tool:
Click on the Breakpoints/Clear All tab to delete all of the breakpoints.
Problem 4.22:
Problem 4.27:
Problem 4.27:
Step 1: Create a vector for Time t, use it to calculate the Supply
Voltage v_s, and plot v_s versus t.
Problem 4.27:
Step 2: Create an if statement that can calculate the Load Voltage for a
given Supply Voltage. Test the if statement at the following time values:
Problem 4.27:
Step 3: Use a for loop with an if statement to load the Load Voltage
vector v_l. Plot both the supply voltage v_s and the load voltage v_l
versus t.
While Loops:
The While Loop is a structure that
repeats a set of commands or calculations
until the Logical Expression condition is
met. The number of iterations through
the loop is unknown prior to starting the
program. Create the following MATLAB
program. Use the Debugging Tool to
step through the program. In this case,
the variable x is a scalar.
While Loops:
Change the While Loop as shown below.
Use the Debugging Tool to step through
the program. In this case, the variable x
is a Vector. Notice how the Counter k is
used to Load the x Vector.
Problem 4.32:
Example Problem:
Write a While Loop to plot the following function over the range −2 ≤
𝑥 ≤ 6.
𝑒 𝑥+1 for 𝑥 < −1
𝑦 = 2 + cos 𝜋𝑥 for − 1 ≤ 𝑥 ≤ 5
10 𝑥 − 5 + 1 for 𝑥 > 5

You might also like