Computer programming Dr. Ivan A. Hashim.

Slides:



Advertisements
Similar presentations
Introduction to Matlab
Advertisements

Introduction to MATLAB
Introduction to MATLAB 7 for Engineers
Getting started with Matlab Numerical Methods Appendix B help/techdoc/learn_matlab/learn_matlab.html.
Introduction to Array The fundamental unit of data in any MATLAB program is the array. 1. An array is a collection of data values organized into rows and.
Matlab intro The Environment
MATLAB INTRO CONTROL LAB1  The Environment  The command prompt Getting Help : e.g help sin, lookfor cos Variables Vectors, Matrices, and Linear Algebra.
1 Statistical Computing in MATLAB AMS 597 Ling Leng.
Martin Ellison University of Warwick and CEPR Bank of England, December 2005 Introduction to MATLAB.
Predefined MATLAB Functions ELEC 206 Computer Applications for Electrical Engineers Dr. Ron Hayne.
Introduction to MATLAB January 18, 2008 Steve Gu Reference: Eta Kappa Nu, UCLA Iota Gamma Chapter, Introduction to MATLAB,
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. A Concise Introduction to MATLAB ® William J. Palm III.
MATLAB Tutorials Session I Introduction to MATLAB Rajeev Madazhy Dept of Mechanical Engineering LSU.
Introduction to MATLAB Computational Probability and Statistics CIS 2033 Section 003 Djordje Gligorijevic, Temple University, Fall 2015.
Introduction to MATLAB CBE 502 Mathematical Methods of Engineering Analysis.
MEGN 536 – Computational Biomechanics MATLAB: Getting Started Prof. Anthony J. Petrella Computational Biomechanics Group.
ECE 1304 Introduction to Electrical and Computer Engineering Section 1.1 Introduction to MATLAB.
Matlab for Engineers Built-in Matlab Functions Chapter 3.
1 MATLAB Basics. 2 MATLAB Documentation /help/techdoc/ Matrix Algebra.
INTRODUCTION TO MATLAB LAB# 01
Matlab Programming for Engineers Dr. Bashir NOURI Introduction to Matlab Matlab Basics Branching Statements Loops User Defined Functions Additional Data.
Basics of MATLAB By DR. Wafaa Shabana
Matlab 14.html Cost: $100 Available in labs on Windows and Unix machines.
ME6104: CAD. Module 4. ME6104: CAD. Module 4. Systems Realization Laboratory Module 4 Matlab ME 6104 – Fundamentals of Computer-Aided Design.
OUTLINE Overview Numbers, variables and similar in Matlab
Master in Optical Fiber Communications and Photonic Technologies Foundations of Digital Transmission - Fall quarter Introduction to Matlab.
1 DKT 211 Basic Communication Engineering LAB # 1A : (Lecture 1) Introduction to Matlab  Basic Features  Scientific features  Array Operations  Script.
INTRODUCTION TO MATLAB MATLAB is a software package for computation in engineering, science, and applied mathemat-ics. It offers a powerful programming.
Matlab Screen  Command Window  type commands  Current Directory  View folders and m-files  Workspace  View program variables  Double click on a.
Computer Simulation Lab Electrical and Computer Engineering Department SUNY – New Paltz SUNY-New Paltz “Lecture 2”
MATLAB Tutorial EE313 Signals and Systems Created: Thursday Jan 25, 2007 Rayyan Jaber Modified by: Jeff Andrews.
A simple classification problem Extract attributes Pattern Pattern recognition decision x C1 C2.
INTRODUCTION TO MATLAB Dr. Hugh Blanton ENTC 4347.
Introduction to MATLAB 1.Basic functions 2.Vectors, matrices, and arithmetic 3.Flow Constructs (Loops, If, etc) 4.Create M-files 5.Plotting.
MATLAB Lecture 1 염익준. Introduction MATLAB (MATrix LABoratory) a special purpose computer program optimized to perform engineering and scientific calculations.
CS100A, Fall 1998, Lecture 201 CS100A, Fall 1998 Lecture 20, Tuesday Nov 10 More Matlab Concepts: plotting (cont.) 2-D arrays Control structures: while,
MATLAB (Matrix Algebra laboratory), distributed by The MathWorks, is a technical computing environment for high performance numeric computation and.
MATLAB ……………….matrix laboratory. Bhushan D Patil PhD Research Scholar Department of Electrical Engineering Indian Institute of Technology, Bombay Powai,
Part(2) MATLAB.
Introduction To MATLAB
ECE 1304 Introduction to Electrical and Computer Engineering
Introduction to MATLAB
Arithmetic Operations
Numeric, Cell and Structural Arrays One of the strenghts of MATLAB is the capabilty to handle collection of numbers called ARRAYS. MATLAB refers to scalars,
ECE 1304 Introduction to Electrical and Computer Engineering
Built-in MATLAB Functions Chapter 3
BASIC ELEMENTS OF A COMPUTER PROGRAM
Introduction to Mat lab
BIL 104E Introduction to Scientific and Engineering Computing
Statistical Computing in MATLAB
Computer Simulation Lab
Introduction to MATLAB
INTRODUCTION TO BASIC MATLAB
MATLAB DENC 2533 ECADD LAB 9.
Matlab Workshop 9/22/2018.
Introduction To MATLAB
StatLab Matlab Workshop
INTRODUCTION TO MATLAB AM2032 JAYANTA MUKHERJEE.
Use of Mathematics using Technology (Maltlab)
StatLab Workshop: Intro to Matlab for Data Analysis and Statistical Modeling 11/29/2018.
Lecture 2 Introduction to MATLAB
INTRODUCTION TO MATLAB
Experiment No. (1) - an introduction to MATLAB
Announcements P3 due today
How to Use MATLAB A Brief Introduction.
CS 111 Introduction to Computing in Engineering and Science
MATLAB stands for MATrix LABoratory.
Laboratory in Oceanography: Data and Methods
Computer Simulation Lab
MatLab Program Used to Calculate Interactive
Presentation transcript:

Computer programming Dr. Ivan A. Hashim

MATLAB MATLAB is a high-performance language for technical computing. It integrates computation, visualization, and programming in an easy-to-use environment where problems and solutions are expressed in familiar mathematical notation. Typical uses include: Math and computation Algorithm development Data acquisition Modeling, simulation, and prototyping Data analysis, exploration, and visualization Scientific and engineering graphics Application development, including graphical user interface building

MATLAB Desktop

Matrices and Arrays Entering Matrices Separate the elements of a row with blanks or commas. Use a semicolon (;) to indicate the end of each row. Surround the entire list of elements with square brackets, [ ]. A = [16 3 2 13; 5 10 11 8; 9 6 7 12; 4 15 14 1]

Matrices and Arrays >> A = [16 3 2 13; 5 10 11 8; 9 6 7 12; 4 15 14 1] A = 16 3 2 13 5 10 11 8 9 6 7 12 4 15 14 1

Matrices and Arrays Subscripts >> A(1,3)+A(2,2)+A(3,4)+A(4,1) ans = 28

Matrices and Arrays The Colon Operator (:) >> 1:10 1 2 3 4 5 6 7 8 9 10 >> 1:2:10 1 3 5 7 9 >> 100:-7:50 100 93 86 79 72 65 58 51

Matrices and Arrays The Colon Operator (:) >> A(2,:) 5 10 11 8 ans = 2 11 7 14

Matrices and Arrays The Colon Operator (:) >> A(1:2,1:3) ans = 16 3 2 5 10 11

Matrices and Arrays The Colon Operator (:) >> A(1:2,2:end) ans = 3 2 13 10 11 8

Matrices and Arrays The Colon Operator (:) >> A(2:3,3:4) ans = 11 8 7 12

Matrices and Arrays The Colon Operator (:) >> A(1:3,2:4) ans = 3 2 13 10 11 8 6 7 12

Matrices and Arrays The Colon Operator (:) >> A([1 3],:) ans = 16 3 2 13 9 6 7 12

Matrices and Arrays The Colon Operator (:) >> A(:,[1 4]) ans = 16 13 5 8 9 12 4 1

Matrices and Arrays The Colon Operator (:) >> A([1 3],[1 4]) ans = 16 13 9 12

Matrices and Arrays Functions >> det(A) >> inv(A) ans = 1.0871e-12 ans = 1.0e+15 * 0.1251 0.3753 -0.3753 -0.1251 -0.3753 -1.1259 1.1259 0.3753 0.3753 1.1259 -1.1259 -0.3753 -0.1251 -0.3753 0.3753 0.1251

Matrices and Arrays Functions >> diag(A) ans = 16 10 7 1

Matrices and Arrays Functions >> length(A) >> length(B) ans = 4 ans = 8

Matrices and Arrays Functions >> numel(A) >> numel(B) ans = 16 ans = 8

Matrices and Arrays Functions >> size(A) >> size(B) ans = 4 4 ans = 1 8

Matrices and Arrays Functions >> max(A) >> max(B) ans = 16 15 14 13 ans = 9 >> max(max(A)) ans = 16

Matrices and Arrays Functions >> min(A) >> min(B) ans = 4 3 2 1 ans = >> min(min(A)) ans = 1

Matrices and Arrays Functions >> sort(B) >> sort(B,'ascend') ans = 0 1 2 3 5 6 8 9 >> sort(B,'descend') ans = 9 8 6 5 3 2 1 0

Matrices and Arrays Functions >> sort(A) or sort(A,1) >> sort(A,2) ans = 4 3 2 1 5 6 7 8 9 10 11 12 16 15 14 13 ans = 2 3 13 16 5 8 10 11 6 7 9 12 1 4 14 15

Matrices and Arrays Functions >> sum(A) >> sum(B) ans = 34 34 34 34 ans = 34 >> sum(sum(A)) ans = 134

Matrices and Arrays Functions >> tril(A) >> triu(A) ans = 16 0 0 0 5 10 0 0 9 6 7 0 4 15 14 1 ans = 16 3 2 13 0 10 11 8 0 0 7 12 0 0 0 1

Matrices and Arrays Functions >> magic(3) >> zeros(3) ans = 8 1 6 3 5 7 4 9 2 ans = 0 0 0 >> zeros(3,2) >> ones(3) ans = 0 0 ans = 1 1 1

Matrices and Arrays Functions >> rand(2) >> rand(2,3) ans = 0.8147 0.1270 0.9058 0.9134 ans = 0.6324 0.2785 0.9575 0.0975 0.5469 0.9649 >> randn(3) ans = -1.3499 -0.0631 -0.1241 3.0349 0.7147 1.4897 0.7254 -0.2050 1.4090

Matrices and Arrays Functions >> mean(A) >> mean(B) ans = 8.5000 8.5000 8.5000 8.5000 ans = 4.2500

Matrices and Arrays Functions >> B' ans = 5 6 8 9 1 3 2

Matrices and Arrays Functions ans = 16 5 9 4 3 10 6 15 2 11 7 14 13 8 12 1

Matrices and Arrays Functions >> A+D >> A*D ans = 18 5 4 15 7 12 13 10 11 8 9 14 6 17 16 3 ans = 68 68 68 68

Matrices and Arrays Functions ans = 21 8 7 18 10 15 16 13 14 11 12 17 9 20 19 6 ans = 48 9 6 39 15 30 33 24 27 18 21 36 12 45 42 3

Matrices and Arrays Functions ans = 341 285 261 269 261 301 309 285 285 309 301 261 269 261 285 341 ans = 256 9 4 169 25 100 121 64 81 36 49 144 16 225 196 1

Matrices and Arrays Functions >> A.*D >> A./D ans = 32 6 4 26 10 20 22 16 18 12 14 24 8 30 28 2 ans = 8.0 1.5 1.0 6.5 2.5 5.0 5.5 4.0 4.5 3.0 3.5 6.0 2.0 7.5 7.0 0.5

Matrices and Arrays Functions >> A.^D >> sqrt(A) ans = 256 9 4 169 25 100 121 64 81 36 49 144 16 225 196 1 ans = 4.0000 1.7321 1.4142 3.6056 2.2361 3.1623 3.3166 2.8284 3.0000 2.4495 2.6458 3.4641 2.0000 3.8730 3.7417 1.0000

Matrices and Arrays Functions >> flip(A) >> flip(B) ans = 4 15 14 1 9 6 7 12 5 10 11 8 16 3 2 13 ans = 0 2 3 1 9 8 6 5

Matrices and Arrays Functions >> fliplr(A) >> fliplr(B) ans = 13 2 3 16 8 11 10 5 12 7 6 9 1 14 15 4 ans = 0 2 3 1 9 8 6 5

Statistical Functions Description corrcoef Correlation coefficients mean Average or mean value of array median Median value of array mode Most frequent values in array std Standard deviation var Variance

Variables MATLAB does not require any type declarations or dimension statements When MATLAB encounters a new variable name, it automatically creates the variable and allocates the appropriate amount of storage If the variable already exists, MATLAB changes its contents num_students = 25 Variable names consist of a letter, followed by any number of letters, digits, or underscores MATLAB uses only the first 31 characters of a variable name. MATLAB is case sensitive

Numbers MATLAB uses conventional decimal notation, with an optional decimal point and leading plus or minus sign, for numbers. Scientific notation uses the letter e to specify a power-of-ten scale factor. Imaginary numbers use either i or j as a suffix. Some examples of legal numbers are 3 -99 0.0001 9.6397238 1.60210e-20 6.02252e23 1i -3.14159j 3e5i All numbers are stored internally using the long format specified by the IEEE floating-point standard. Floating-point numbers have a finite precision of roughly 16 significant decimal digits and a finite range of roughly 10-308 to 10+308.

Operators Operators Description + Addition - Subtraction * Multiplication / Division \ Left division (described in “Matrices and Linear Algebra” in the MATLAB documentation) ^ Power ' Complex conjugate transpose ( ) Specify evaluation order

Relational and Logic Operators Description == Equal < Less than > Greater than <= Less than or equal >= Greater than or equal ~= Not equal & And | Or ~ Not

Functions cos(x) sin(x) tan(x) sec(x) csc(x) cot(x) acos(x) asin(x) atan(x) atan2(y,x) exp(x) log(x) [log(x) is ln(x)] log10(x) log2(x) sqrt(x) cosh(x) sinh(x) tanh(x) sech(x) csch(x) coth(x) acosh(x) asinh(x) atanh(x)

Functions Function Description abs(x) the absolute value of a number (real or complex) clc clears the command window; useful for beautifying printed output ceil(x) the nearest integer to x looking toward +1 clear clears all assigned variables close all closes all figure windows close 3 closes figure window 3 fix(x) the nearest integer to x looking toward zero mod(x,y) the integer remainder of x/y rem(x,y) round(x) the nearest integer to x sign(x) the sign of x and returns 0 if x=0

Special Functions pi 3.14159265… i Imaginary unit, j Same as i eps Floating-point relative precision, realmin Smallest floating-point number,2-1022 realmax Largest floating-point number, Inf Infinity NaN Not-a-number

Basic Plotting Functions Creating a Plot x = 0:pi/100:2*pi; y = sin(x); plot(x,y)

Basic Plotting Functions xlabel('x = 0:2\pi') ylabel('Sine of x') title('Plot of the Sine Function','FontSize',12)

Basic Plotting Functions text(1,-1/3,'{\it Sinwave Example.}')

Basic Plotting Functions Setting Axis Limits axis([xmin xmax ymin ymax]) axis([-1 7 -2 2])

Basic Plotting Functions Multiple Data Sets in One Graph x = 0:pi/100:2*pi; y = sin(x); y2 = sin(x-.25); y3 = sin(x-.5); plot(x,y,x,y2,x,y3)

Basic Plotting Functions Multiple Data Sets in One Graph legend('sin(x)','sin(x-.25)','sin(x-.5)')

Basic Plotting Functions Specifying Line Styles and Colors plot(x,y,'color_style_marker') x = 0:pi/100:2*pi; y = sin(x); plot(x,y,'r:+') r g b y w k m c - -- : -. + o * x s d ^ v < > p h

Basic Plotting Functions Adding Plots to an Existing Graph x = 0:pi/10:2*pi; y1 = sin(x); y2 = cos(x); plot(x,y1) hold on plot(x,y2)

Basic Plotting Functions Adding Plots to an Existing Graph x = 0:pi/10:2*pi; y1 = sin(x); y2 = cos(x); plot(x,y1) hold on plot(x,y2) grid on

Basic Plotting Functions Multiple Plots in One Figure x = 0:pi/10:2*pi; y1 = sin(x);y3=tan(x); y2 = cos(x);y4=cot(x); subplot(2,2,1); plot(x,y1) subplot(2,2,2); plot(x,y2) subplot(2,2,3); plot(x,y3) subplot(2,2,4); plot(x,y4)

Basic Plotting Functions Multiple Plots in One Figure x = 0:pi/10:2*pi; y1 = sin(x); y2 = cos(x); y3=tan(x); subplot(2,2,1); plot(x,y1) subplot(2,2,2); plot(x,y2) subplot(2,2,3:4); plot(x,y3)

Basic Plotting Functions Multiple Plots in One Figure x = 0:pi/10:2*pi; y1 = sin(x); y2 = cos(x); y3=tan(x); subplot(2,2,1); plot(x,y1) subplot(2,2,3); plot(x,y2) subplot(2,2,[2 4]); plot(x,y3)

Complex Numbers >> A=3+4i >> B = complex(-1,-3) A = >> A = complex(3,4) >> B=-1-3j A = 3.0000 + 4.0000i B = -1.0000 - 3.0000i

Complex Numbers >> abs(A) >> angle(A) ans = 5 ans = 0.9273 >> abs(B) >> angle(A)*180/pi ans = 3.1623 ans = 53.1301

Complex Numbers >> conj(A) >> real(A) ans = 3.0000 - 4.0000i ans = 3 >> conj(B) >> real(B) ans = -1.0000 + 3.0000i ans = -1

Complex Numbers >> imag(A) >> A+B ans = 4 ans = >> imag(B) >> A-B ans = -3 ans = 4.0000 + 7.0000i

Complex Numbers >> A*B >> A^2 ans = 9.0000 -13.0000i ans = >> sin(A) ans = -1.5000 + 0.5000i ans = 3.8537 -27.0168i

M-File If-statement A=input('input the value of A ='); if mod(A,2)==0 disp('A is even') else disp('A is odd') end input the value of A =4 A is even input the value of A =5 A is odd

M-File If-statement input the value of A =5 A=input('input the value of A ='); B=input('input the value of B ='); if A>B 'greater' elseif A<B 'less' else 'equal' end input the value of A =5 input the value of B =6 ans = less input the value of A =10 input the value of B =2 ans = greater

M-File Switch and case input the value of A =2 A=input('input the value of A ='); switch A case {1,2,3} y=20 case 4 y=50 case 5 y=70 otherwise y=100 end input the value of A =2 y = 20 input the value of A =5 y = 70

M-File For input the value of A =2 A=input('input the value of A ='); B=input('input the value of B ='); sum=0; for i=A:B if mod(i,2)==0 sum=sum+i; end sum input the value of A =2 input the value of B =10 sum = 30

M-File while input the value of A =2 A=input('input the value of A ='); B=input('input the value of B ='); sum=0; while A<=B sum=sum+A; A=A+1; end sum input the value of A =2 input the value of B =10 sum = 54

M-File Continue input the value of A =2 A=input('input the value of A ='); B=input('input the value of B ='); sum=0; for i=A:B if mod(i,2)==1 continue end sum=sum+i; sum input the value of A =2 input the value of B =10 sum = 30

M-File Break input the value of A =2 A=input('input the value of A ='); B=input('input the value of B ='); sum=0; for i=A:10000 sum=sum+i; if i==B break end sum input the value of A =2 input the value of B =10 sum = 54

M-File Scripts sum=0; for i=1:10 sum=sum+i; sum1to10 end sum = sum 55 Save as sum1to10.m

M-File Functions function [sum]=sumAtoB(A,B) >> sumAtoB(1,5) for i=A:B sum=sum+i; end >> sumAtoB(1,5) ans = 15 >> sumAtoB(5,20) ans = 200 Save as sumAtoB.m