0% found this document useful (0 votes)
228 views

MATLAB Programming For Numerical Computations

INTRODUCTION TO MATLAB PROGRAMMING Lec 1.1: MATLAB Basics Dr. Niket Kaisare Department of Chemical Engineering IIT–Madras

Uploaded by

tsram90
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
228 views

MATLAB Programming For Numerical Computations

INTRODUCTION TO MATLAB PROGRAMMING Lec 1.1: MATLAB Basics Dr. Niket Kaisare Department of Chemical Engineering IIT–Madras

Uploaded by

tsram90
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 12

INTRODUCTION

TO MATLAB PROGRAMMING
Lec 1.1: MATLAB Basics
Dr. Niket Kaisare
Department of Chemical Engineering
IITMadras

NPTEL Course: MATLAB Programming for Numerical Computations Week-1


About this Module

We will cover the following topics


MATLAB basics

Arrays: Unlocking potential of MATLAB

Loops and Execution Control

MATLAB files: Scripts and Functions

Program Output and Plotting


Starting and Exiting MATLAB

We will go over starting a MATLAB session, layout of MATLAB window,


MATLAB editor, etc.
Also see video Getting Started with MATLAB on MATLAB site
http://in.mathworks.com/videos/getting-started-with-matlab-68985.html
MATLAB Programming Example

Indian captain, Mahendra Singh Dhoni, hits a ball with initial velocity of 35
m/s and angle of 45. If the boundary is at a distance of 75 m, will he score
a six?
Setting up the problem:
!"#$ = 35; *+ = !"#$ cos //4 ; !+ = !"#$ sin //4

4 5 = *; 6 5 = !

* 5 = 8*; ! 5 = 9;
Result
MATLAB Code
%% Define Parameters and Initial Conditions
param.g = 9.81; % gravitational acceleration
param.kappa = 0.006; % air drag coefficient
u0 = 35*cos(pi/4);
v0 = 35*sin(pi/4);

%% Setting up and Solving the problem


X0 = [0; 0; % starting position is the origin
u0; v0]; % starting velocity is given
tSpan = [0 20]; % simulation time
[tOut, XOut] = ode45(@ballTrajectoryFun,tSpan,X0, [], param);

%% Displaying the results


figure(1);
plot(XOut(:,1),XOut(:,2),'bo');
xlabel('x (m)'); ylabel('y (m)');

%% Animating results
exitCode = ballAnimation(tOut,XOut);
MATLAB Code: Main Code Blocks
%% Define Parameters and Initial Conditions

Computation Input block


param.g = 9.81; % gravitational acceleration
param.kappa = 0.006; % air drag coefficient
u0 = 35*cos(pi/4);
v0 = 35*sin(pi/4);

%% Setting up and Solving the problem


X0 = [0; 0; % starting position is the origin
u0; v0]; % starting velocity is given
tSpan = [0 20]; % simulation time
[tOut, XOut] = ode45(@ballTrajectoryFun,tSpan,X0, [], param);

%% Displaying the results

Output block
figure(1);
plot(XOut(:,1),XOut(:,2),'bo');
xlabel('x (m)'); ylabel('y (m)');

%% Animating results
exitCode = ballAnimation(tOut,XOut);
MATLAB Code: Key Parts
%% Define Parameters and Initial Conditions
param.g = 9.81; Comment
u0 = 35*cos(pi/
Assignment

(Math) Expression

[tOut, XOut] = ode45(@bal

Calling a function
plot(XOu
Calling a function
MATLAB Code
%% Define Parameters and Initial Conditions
param.g = 9.81; % gravitational acceleration
param.kappa = 0.006; % air drag coefficient
u0 = 35*cos(pi/4);
v0 = 35*sin(pi/4);

%% Setting up and Solving the problem


X0 = [0; 0; % starting position is the origin
u0; v0]; % starting velocity is given
tSpan = [0 20]; % simulation time
[tOut, XOut] = ode45(@ballTrajectoryFun,tSpan,X0, [], param);

%% Displaying the results


figure(1);
plot(XOut(:,1),XOut(:,2),'bo');
xlabel('x (m)'); ylabel('y (m)');

%% Animating results
exitCode = ballAnimation(tOut,XOut);
Basic Data Types

Matlab easily works with arrays


Scalars, vectors and arrays

Assigning variables

Row vs. column vectors

Arrays / Matrices

Suppress echo

Variables are case-sensitive


Basic Mathematical Expressions
Scalar Operations Special Variables
Variable Meaning
+ - * / ^
pi Number /
log, exp eps Machine precision
i Imaginary unit
pow, sqrt inf Infinity
NaN Not a Number (e.g., 0/0)
sin, cos, tan
ans Last displayed result
asin, acos, atan end Last element of array
realmax Largest real number
rem, round, ceil, floor intmax Largest integer
End of Lecture 1-1

You might also like