Documenti analoghi

fprintf('avete speso %d (media %f)', somma, media);

v indx v t v indx. v >0 v

Introduzione a Matlab

Strumenti per il calcolo numerico Matlab/Octave. Informatica B Prof. A. Morzenti

8 Introduzione MATLAB

8 Introduzione MATLAB

Matlab: Variabili e Array. Informatica B

Strumenti per il calcolo numerico Matlab/Octave

Strumenti per il calcolo numerico Matlab/Octave

Strumenti per il calcolo numerico Matlab/Octave. Informatica B Prof. A. Morzenti

Introduzione a MATLAB

FONDAMENTI DI INFORMATICA. Prof. Alfredo Accattatis Slide (rielaborate) del prof. Emiliano Casalicchio

Introduzione a MATLAB

8 Introduzione MATLAB

MATLAB I/O. Informatica B - A.A. 2012/2013 ACQUISIZIONE DI INPUT DA TASTIERA

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 1 - Introduzione a MATLAB

MATLAB c Utilizzo di Matlab. Operazioni fondamentali. Elementi di grafica.

INTRODUZIONE A MATLAB

Introduzione a Matlab Costruzione di Macchine 2 Prof. Sergio Baragetti

Francesca Mazzia Dipartimento Interuniversitario di Matematica Università di Bari. MATLAB: lezione introduttiva

INTRODUZIONE A MATLAB/OCTAVE

Laboratorio di Matlab

MATLAB - Introduzione. Antonino Polimeno

Matlab: Logicals e Strutture di Controllo

Elementi di Calcolo Scientifico per l Ingegneria A.A

Script in Matlab. INFORMATICA B + C (sezione L-Z) Ingegneria Elettrica, Chimica e dei Materiali

Facoltà di Ingegneria Industriale. Matlab/Octave - Esercitazione 8

Introduzione al MATLAB c Parte 1 Variabili ed array

19 FEBBRAIO 2009 PRIMA PARTE

Introduzione a MATLAB

DIPARTIMENTO DI ELETTRONICA, INFORMAZIONE E BIOIGNEGNERIA. INFORMATICA B Ingegneria Elettrica. Script in Matlab

Linguaggio C: Array Valeria Cardellini

Laboratorio di Matematica Computazionale A.A Lab. 1 - Introduzione a Matlab

Introduzione al MATLAB c Parte 1 Variabili ed array

Introduzione all ambiente MATLAB

Università degli Studi di Napoli Federico II CdL Ing. Elettrica Corso di Laboratorio di Circuiti Elettrici

Calcolo Numerico I - a.a Laboratorio 1 - Introduzione a MATLAB

Vettori e Matrici. Corso di Calcolo Numerico. 24 Aprile 2018

MATLAB Alcune funzioni utili: fprintf, length, size

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 1 - Introduzione a MATLAB

Introduzione a MATLAB

UTILIZZO DI MATLAB OPERAZIONI FONDAMENTALI

Introduzione. Corso di Metodi Numerici. 06 Marzo 2019

CODICE PER LA FUNZIONE DI PUNTO FISSO (BOZZA)

Calcolo Scientifico e Metodi Numerici A.A. 2018/2019

Introduzione al MATLAB c Parte 3 Script e function

Introduzione al MATLAB c Parte 3 Script e function

Introduzione al MATLAB c Parte 3 Script e function

Introduzione all ambiente Matlab

College Algebra. Logarithms: Denitions and Domains. Dr. Nguyen November 9, Department of Mathematics UK

FONDAMENTI DI INFORMATICA. Prof. Alfredo Accattatis ( ) Tutor: prof. Venturino Taggi (

Matlab. Vettori, funzioni matematiche e grafici.

Matlab: Logicals e Strutture di Controllo

INTRODUZIONE A MATLAB

Laboratorio di Programmazione II Corso di Laurea in Bioinformatica Dipartimento di Informatica - Università di Verona

Segnali e Sistemi Matlab. Laurea in Ingegneria dell Informazione Anno II, secondo semestre, A.A. 16/17

Laboratorio di Matlab

Introduzione a MATLAB

Università degli Studi di Napoli Federico II CdL Ing. Elettrica Corso di Laboratorio di Circuiti Elettrici

1 LABORATORIO DI SEGNALI E SISTEMI: INTRODUZIONE A MATLAB. Tagliavini Alessia 30/04/2014

Introduzione a Matlab

Matlab I/O. Daniele Loiacono, Vittorio Zaccaria

Approssimazione dell esponenziale

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 1 - Introduzione a MATLAB

Esercizi sulla rappresentazione compatta di matrici sparse

2 a lezione - laboratorio

Definire una sequenza di istruzioni che specificano come effettuare una elaborazione

Introduzione a MATLAB

Laboratorio di MatLab

Introduzione a MATLAB. Fabio Rossi

Introduzione a Matlab. Mauro Gaggero

INTRODUZIONE A MATLAB

FONDAMENTI DI INFORMATICA. Prof. Alfredo Accattatis Tutor : Prof. Venturino Taggi

Strutture di controllo condizionali in Matlab

Page Rank. Guerra Stefano. 1. DESCRIZIONE DEL PROBLEMA "Page Rank" 2. DESCRIZIONE DELL ALGORITMO. Pagina 2

Arrays. Vector array. Matrix array. Row vector. 2D matrix. 1 2 Column vector

Introduzione a Matlab e Simulink. Autore: Simone Ciotti, Centro di Ricerca E.Piaggio, UNIPI

INTRODUZIONE A MATLAB

Lezione 19: Introduzione a MATLAB Mercoledì 21 Ottobre 2009

ESERCITAZIONE MATLAB

Fondamenti di Informatica A. A / 1 9

1) Matlab e simulazione. 2) Esempi di utilizzo. Mauro De Sanctis corso di Informazione e Codifica Università di Roma Tor Vergata

Laboratorio di MatLab

MATLAB (1) Introduzione e Operazioni con array

Elementi di MATLAB. Definizione di matrice

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 1 - Introduzione a MATLAB

Introduzione all uso di MATLAB

backslash (\): left matrix division

Operatori Relazionali in MATLAB. Logica e relazioni

MATRICI (ARRAY) IN MATLAB/OCTAVE

Transcript:

- 3 -

>>

>> 5 + 7 ans ans = 12 >> 5 / 7 ans = 0.7143

>> 5 + 7 ans = 12 >> 5 / 7 ans = 0.7143 >> 5 * 7 ans = 35 >> 'a' + 2 ans = 99 >> 5 ^ 7 ans = 78125

- 20 -

nomevariabile = espressione nomevariabile nomevariabile ans

>> a = 7 a = 7 a >> a = v Undefined function or variable 'v'.

whos whos nomevariabile nomevariabile >> clear >> whos >> clear

1234/6 ans= 205.6667 a=1234/6 a = 205.6667 2/5 ans = 0.40000 5/0 ans = Inf 5^2 ans = 25 1+1==2 1+1~=2 ans = 1 ans = 0 ~

>> a = [1 2 3] a = 1 2 3 >> a = [1, 2, 3] a = 1 2 3 >> a = [1; 2; 3] a = 1 2 3

>> a = [1 2 3] a = 1 2 3 >> a' ans = 1 2 3

[inizio : step : fine] inizio inizio + step inizio + 2*step fine fine inizio + k*step

step step >> [10 : -1 : 10]

nomearray1 = nomearray2 nomearray2 nomearray1 >> a = [1 2 3]; >> a = a + 1 a = 2 3 4

nomevettore(indice) nomevettore indice nomevettore

>> a = [1 : 3] a = 1 2 3 >> a(3) = 6 a = 1 2 6 >> b = [1 : 4] b = 1 2 3 4 >> a = b a = 1 2 3 4

>> a = [1 : 3] a = 1 2 3 >> a(2) ans = 2 >> a(4) Index exceeds matrix dimensions >> a(1.3) Subscript indices must either be real positive integers or logicals

>> a = [1 : 3] a = 1 2 3 >> ii = 2; >> a(ii) ans = 2 >> a(ii) = a(ii - 1) + a(ii + 1) a = 1 4 3

c = a + b c i = a i + b i, a b c i a c = a * b c b c = σ i a i b(i)

>> a = [1 : 3] >> b = [1 : 4] >> a + b ans = 2 3 4 3 4 5 4 5 6 5 6 7

c = a.* b c i = a i b i i c = a./ b c i = a i /b i i c = a.^ b c i = a i b(i) i k b c = k * b = k.* b c i = k b i i

>> v1 = [2 3 5 4] >> v1^2 Error using ^ Inputs must be a scalar and a square matrix. To compute elementwise POWER, use POWER (.^) instead. v1 * v1 >> v1.^2 ans = 4 9 25 16 v1.* v1 v1

Operazione Sintassi Matlab Commenti Array addition a + b Array e matrix addition sono identiche Array subtraction a b Array e matrix subtraction sono identiche Array multiplication a.* b Ciascun elemento del risultato è pari al prodotto degli elementi corrispondenti nei due operandi Matrix multiplication a * b Prodotto righe per colonne dell algebra lineare Array right division a./ b risultato(i,j) = a(i,j) / b(i,j) Array left division a.\ b risultato(i,j) = b(i,j) / a(i,j) Matrix right division a / b a*inversa(b) Matrix left division a \ b inversa(a)*b Array exponentiation a.^ b risultato(i,j) = a(i,j)^b(i,j)

>> a = [1,2,3] a = 1 2 3 >> b = [a, a + 3, a + 6] b = 1 2 3 4 5 6 7 8 9 >> b = [a, a +3] b = 1 2 3 1 2 3 3

a = [0 7+1]; b = [a(2) 5 a]; a = [0 8] b = [8 5 0 8]

>> msg = ciao mamma ; >> msg = [msg, torno per cena ] msg = ciao mamma torno per cena >> msg(1) = C msg = Ciao mamma torno per cena

>> a = [1, 2; 3, 4] a = 1 2 3 4 a' = 1 3 2 4

>> a = [1 : 3] a = 1 2 3 >> b = [4; 5; 6] b = 4 5 6 >> A = [a; b] Error using vertcat CAT arguments dimensions are not consistent. >> A =[a, b] Error using horzcat CAT arguments dimensions are not consistent. >> A =[a; b'] A = 1 2 3 4 5 6

nomematrice(indice1, indice2) indice1 indice2 nomematrice >> A = [1 : 3; 4 : 6; 7: 9 ] A = >> A(2, 3) 1 2 3 ans = 4 5 6 6 7 8 9 >> A(3,5) Index exceeds matrix dimensions.

a b ij = a ik b kj k

A x = b x = A 1 b A 1 x = A\b

>> c = 1 c = 1 >> c(3) = 3 c = 1 0 3 >> c(2,3) = 5 c = 1 0 3 0 0 5

a = [1 2; 3, 4] a = A a = x = [-1.3 sqrt(3) (1+2)/5] x(5) = abs(x(1)) 1 2 3 4 1 2 3 4 x = -1.30000 1.73205 0.60000 x = -1.30000 1.73205 0.60000 0.00000 1.30000

b = a b = 1 3 2 4 c = a+b c = 2 5 5 8 x=[-1 0 2]; y = x' y = -1 0 2

whos whos nomevariabile nomevariabile >> clear >> whos >> clear

whos whos nomevariabile >> a = 7; >> whos a Name Size Bytes Class Attributes a 1x1 8 double

: frase = questa e` una stringa ; whos commento; Name Size Bytes Class Attributes frase 1x21 42 char

>> a = [sqrt(-1) 7] a = 0 + 1.0000i 7.0000 >> whos Name Size Bytes Class Attributes a 1x2 32 double complex

x = [-1.3 3.1+5.3j 0]

>> a = [1 3 5].^ (0.2) a = 1.0000 1.2457 1.3797 >> whos a Name Size Bytes Class Attributes a 1x3 24 double >> a = 'cia'; >> whos a Name Size Bytes Class Attributes a 1x3 6 char

clear

% >> % This is a comment >> x = 2+3 % So is this x = 5

exist

dir help diary who whos workspace save load clear close - 71 -

nomevettore vettoreindici nomevettore(vettoreindici) nomevettore(indice)

a(v) [a(v(1)), a(v(2)),..., a(v(end))] v a

end vettoreindici end nomevettore >> a = [1 : 6] a = 1 2 3 4 5 6 >> b = a(1 : end - 1) b = 1 2 3 4 5 >> b = a(end : -1 : 1) b = 6 5 4 3 2 1

>> v = [6 8 4 2 4 5 1 3]; >> v([1 4 7]) ans = 6 2 1 >> v(2:2:6) ans = 8 2 5 >> v(3:end-2) ans = 4 2 4 5 >> v(v) ans = 5 3 2 8 2 4 6 4 >> v([1, 1, 1, 2, end]) ans = 6 6 6 8 3

v2 v1(vettoreindici) v1(vettoreindici) = v2 >> a = [1 : 10] a = 1 2 3 4 5 6 7 8 9 10 >> a(1 : 3) = [0 0 0] a = 0 0 0 4 5 6 7 8 9 10

v2 v1(vettoreindici) v1(vettoreindici) = v2 >> a = 0 0 0 4 5 6 7 8 9 10 >> a(2 : 2 : end) = 2 * a(2 : 2 : end)

v2 v1(vettoreindici) v1(vettoreindici) = v2 >> a = 0 0 0 4 5 6 7 8 9 10 >> a(2 : 2 : end) = 2 * a(2 : 2 : end) a = 0 0 0 8 5 12 7 16 9 20

v2 v1(vettoreindici) v1(vettoreindici) = v2 >> a = 0 0 0 4 5 6 7 8 9 10 >> a(2 : 2 : end) = 2 * a(2 : 2 : end) a = 0 0 0 8 5 12 7 16 9 20 >> a(1 : 2 : end) = a(end : -2 : 1)

v2 v1(vettoreindici) v1(vettoreindici) = v2 >> a = 0 0 0 4 5 6 7 8 9 10 >> a(2 : 2 : end) = 2 * a(2 : 2 : end) a = 0 0 0 8 5 12 7 16 9 20 >> a(1 : 2 : end) = a(end : -2 : 1)

v2 v1(vettoreindici) v1(vettoreindici) = v2 >> a = 0 0 0 4 5 6 7 8 9 10 >> a(2 : 2 : end) = 2 * a(2 : 2 : end) a = 0 0 0 8 5 12 7 16 9 20 >> a(1 : 2 : end) = a(end : -2 : 1) 20 16 12 8 0

v2 v1(vettoreindici) v1(vettoreindici) = v2 >> a = 0 0 0 4 5 6 7 8 9 10 >> a(2 : 2 : end) = 2 * a(2 : 2 : end) a = 0 0 0 8 5 12 7 16 9 20 >> a(1 : 2 : end) = a(end : -2 : 1) a = 20 0 16 8 12 12 8 16 0 20

nomematrice(vettore1,vettore2) nomematrice vettore2 vettore1

m = 9 8 7 6 5 4 3 2 1 0 11 12 0 0 0 >> m([1 4], [2 3]) ans = 8 7 11 12

m = 9 8 7 6 5 4 3 2 1 0 11 12 0 0 0 >> m(1:2:5, 1:end) ans = 9 8 7 3 2 1 0 0 0 >> m(1:2:5, :) : 1:end

m = 9 8 7 6 5 4 3 2 1 0 11 12 0 0 0 >> m(2:2:4, :) = [-1-2 -3; -4-5 -6] m = 9 8 7-1 -2-3 3 2 1-4 -5-6 0 0 0

% inizializzare una matrice 5x5 con tutti valori a zero A(5,5) = 0; % modificare la colonna centrale in 1 A(:, 3) = 1; % modificare la riga centrale in 3 A(3, : ) = 3; % sommare 2 ai valori della colonna centrale A(:, 3) = A(:, 3) + 2; % NB termini a dx e sx dell uguale hanno la stessa dimensione % porre a 2 gli elementi nel primo quadrante A(1 : 2, 1 : 2) = 2; % copiare nell'ultima riga la prima riga letta al contrario A(end, :) = A(1, end : -1 : 1)

nomevettore(vettoreindici) = k nomevettore vettoreindici k >> a = [1 : 6] a = 1 2 3 4 5 6 >> a(1 : 3) = 0 a = 0 0 0 4 5 6

>> m(4, 3) = 3; >> m(1:2, 1:2) = 4 ans = 4 4 0 4 4 0 0 0 0 0 0 3

60 60 135 135 135 300

clear; clc; close all; A(330, 495) = 0; A(:, 135:195) = 1; A(135:195, :) = 1; figure(); imagesc(a); title( Bandiera svedese ); axis equal;

clear; clc; close all; A(330, 495, 3) = 0; A(:, 1 : 495/3, 2) = 1; % verde A(:, 495/3 : (2*495)/3, :) = 1; % bianco A(:, (2*495)/3 : end, 1) = 1; % rosso figure(); imagesc(a); title( Bandiera italiana ); axis equal;

>> a = [1 : 10] a = 1 2 3 4 5 6 7 8 9 10 % replico le righe -> matrice 5x10 >> A = [a; a; a; a; a]; % faccio una matrice 10x10 >> A = [A; A]; % tabellina del 10 >> T = A.*A ;

nomevettore = [] >> a = [] a = [] >> whos a Name Size Bytes Class Attributes a 0x0 0 double

[] >> a = [1 : 5] a = 1 2 3 4 5 >> whos a Name Size Bytes Class Attributes a 1x5 40 double >> a(3) = [] a = 1 2 4 5 >> whos a Name Size Bytes Class Attributes a 1x4 32 double

[] >> m(1 : 3, 1:3) = 1 m = 1 1 1 1 1 1 1 1 1 >> m(2, : ) = 5 m = 1 1 1 5 5 5 1 1 1 >> m(3,3)=[]??? Subscripted assignment dimension mismatch.

>> m(:, 2) = [] m = 1 1 5 5 1 1 >> whos m Name Size Bytes Class Attributes m 3x2 48 double

>> a = [1 2 3; 4 5 6; 7 8 9; 10 11 12] a = 1 2 3 4 5 6 7 8 9 10 11 12 >> a(3, 2) ans = 8 >> a(10) ans = 6

clear; clc; s = 5; A(s,s) = 0; A(1:2:end) = 1; figure(); imagesc(a);

pi pi i j Circ1 = 2 * pi * 10; pi = 3; Circ2 = 2 * pi * 10; - 109 -

1

valore = input(stringadavisualizzare); stringadavisualizzare [] valore stringadavisualizzare

disp num2str str = [ il valore di pi e` num2str(pi)]; disp(str); - 114 -

fprintf fprintf(stringacontrollo); stringacontrollo stringacontrollo

stringacontrollo \n \t %d %f %c %s

disp fprintf disp >> x = 2*(1-2*i)^3; >> str = [ disp: x = num2str(x)]; >> disp(str); disp: x = -22+4i fprintf >> fprintf( fprintf: x = %8.4f\n, x); fprintf: x = -22.0000

disp fprintf disp >> a = [1 1 1; 1 1 1] >> disp(a) 1 1 1 1 1 1 fprintf >> fprintf('%d', a) 111111>>

disp fprintf disp >> x = [1 2 3] >> disp(['hai inserito ' num2str(x)]) hai inserito 1 2 3 fprintf >> >> fprintf('hai inserito %d\n, x) hai inserito 1 hai inserito 2 hai inserito 3

clear; clc; s = input( Quanto grande la scacchiera? '); A(s,s) = 0; A(1:2:end) = 1; figure(); imagesc(a); disp(['scacchiera ', num2str(s), 'x', num2str(s)]) % fprintf('scacchiera %dx%d\n', s, s)