PON 2007 2013 Liceo Scientifico Leonardo da Vinci. Vallo della Lucania



Documenti analoghi
3. Matrici e algebra lineare in MATLAB

Introduzione a MATLAB

INTRODUZIONE A MATLAB

Introduzione a Matlab

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

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

Inversa di una matrice quadrata. L operatore inv() inverte una matrice quadrata non singolare (cioè in cui il determinate è diverso da zero).

PON Liceo Scientifico Leonardo da Vinci. Vallo della Lucania

Introduzione a MATLAB

Principi di Programmazione Prova del 10/6/2008 (ore 10.30)

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

Laboratorio di Calcolo Numerico Laboratorio 8: Vettori e Matrici

1. Si scriva una function Matlab che implementa il seguente metodo di punto fisso

Esercizi di MatLab. Sommario Esercizi di introduzione a MatLab per il corso di Calcolo Numerico e Laboratorio, A.A

1 Esercizi di Matlab. L operatore : permette di estrarre sottomatrici da una matrice assegnata. Vediamo alcuni esempi.

LABORATORIO DI INFORMATICA ESERCITAZIONE VIII

Scilab. Matrici Bidimensionali. Corso di Informatica CdL: Chimica. Claudia d'amato.

Variabile, costante ed espressione

Francesca Mazzia Dipartimento Interuniversitario di Matematica Università di Bari. MATLAB: Elementi di Algebra Lineare

MATLAB - Programmazione - 2. Antonino Polimeno

Algebra lineare. Laboratorio di programmazione e calcolo CdL in Chimica. Pierluigi Amodio

Vettori e matrici. Lorenzo Pareschi. Dipartimento di Matematica & Facoltá di Architettura Universitá di Ferrara

Introduzione a MATLAB

Corso di Calcolo numerico

Operazioni tra matrici. Moltiplicazione per uno Scalare Moltiplicare ogni elemento della matrice per lo scalare. Sia c = 3

UNIVERSITÀ DEGLI STUDI DI PAVIA FACOLTÀ DI INGEGNERIA. Introduzione a Matlab

Fondamenti di Informatica e Programmazione

Fondamenti di Informatica

Computazione per l interazione naturale: Richiami di algebra lineare

Introduzione a MATLAB

Introduzione al MATLAB c Parte 2

Il programma OCTAVE per l insegnamento dell algebra lineare nella Scuola Secondaria p. 1

Calcolo Numerico. Lab n. 8. Metodi diretti per la soluzione di sistemi lineari A.A

Introduzione. MATLAB è l acronimo di MATrix LABoratory

FONDAMENTI DI INFORMATICA

Scilab. Introduzione a Scilab - Vettori. Corso di Informatica CdL: Chimica. Claudia d'amato.

A = Quindi > b=a(:) b =

Programmare con MATLAB c Parte 5 Cicli: for e while

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

INTRODUZIONE A MATLAB. Introduzione. Calcolatrice base. Calcolatrice base. Variabili predefinite o speciali. Variabili predefinite o speciali

Esercitazione 00 Introduzione a Matlab

Fondamenti di Informatica

Vettori e Matrici. Vettori. Vettori e matrici: dati. Vettori di caratteri Polinomi. Dimensione (Size) numero di righe e di colonne della matrice

Le tecniche di calcolo mentale rapido usano alcune proprietà delle operazioni. Le principali proprietà utilizzate sono: = = 2 3

Introduzione a Matlab

MatLab - Testo pagina 1 di 5 101

INTRODUZIONE A MATLAB

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

Introduzione a MATLAB

Capitolo 3 Matrici. Marco Robutti. Facoltà di ingegneria Università degli studi di Pavia. Anno accademico

Aritmetica in Floating Point

A m n B n p = P m p. 0 1 a b c d. a b. 0 a 0 c Il risultato e lo stesso solo nel caso in cui c = 0 e a = d.

Algebra matriciale. Un algebra è un sistema di segni in cui sono definite delle operazioni Algebra scalare Algebra dei vettori Algebra matriciale

Introduzione allo Scilab Parte 4: matrici; esempi.

Breve introduzione a MATLAB

Strutture di controllo condizionali in Matlab

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

Risoluzione di problemi ingegneristici con Excel

Matematica II, aa

PON Liceo Scientifico Leonardo da Vinci. Vallo della Lucania

ESERCITAZIONE MATLAB

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 3-28/3/2019

Matrici. 3. Costruire le seguenti matrici, contarne gli elementi non nulli e visualizzarle con spy: . B 10x10 = ; D 7x7 =

19 FEBBRAIO 2009 PRIMA PARTE

Introduzione a Matlab

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 4-22/3/2018

PreCorso di Matematica - PCM Corso M-Z

Prof. Marco Masseroli

x t = M t a.

MATRICI E VETTORI APPROFONDIMENTO PER IL CORSO DI LABORATORIO DI INFORMATICA SARA POLTRONIERI

Elementi di Algebra Matriciale. (richiami)

A. Introduzione a Matlab

1. Descrivere il significato della seguente istruzione se x è un vettore di 10 elementi reali:

Esercitazioni di MatLab

Corso di Matematica e Statistica 3 Algebra delle matrici. Una tabella rettangolare: la matrice. Una tabella rettangolare: la matrice

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

Introduzione a MatLab

ossia può anche essere localizzato univocamente sul piano complesso con la sua forma polare.

1. Calcolo dell indice di condizionamento di una matrice

Laboratorio di Matlab

MATRICI E SISTEMI LINEARI

Esercizi su algebra lineare, fattorizzazione LU e risoluzione di sistemi lineari

MATLAB parte II. Array

Richiami di Algebra Lineare

Algoritmi stabili e instabili

Il determinante. Calcolo del determinante di matrici particolari. matrici di ordine 2: sia. a11 a A = allora

1 Istruzioni base. Istruzioni di assegnamento Per assegnare 1 alla variabile a si usa. >> a = 1

Corso Matlab : Seconda lezione (Esercitazione, 10/05/13) Samuela Persia, Ing. PhD.

Algoritmi per operazioni con le matrici

VETTORI E MATRICI. Ing. Nicola Cappuccio 2014 U.F.5 ELEMENTI SCIENTIFICI ED ELETTRONICI APPLICATI AI SISTEMI DI TELECOMUNICAZIONI

Corso di Geometria BIAR, BSIR Esercizi 2: soluzioni

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

Transcript:

PON 2007 2013 Liceo Scientifico Leonardo da Vinci Vallo della Lucania Nuovi percorsi matematici: Osservare, descrivere, costruire. Matlab - 2: Lavorare con le matrici Vallo della Lucania 26 Settembre 2008

Vettori e matrici in Matlab Matlab è la contrazione di MATrix LABoratory Il tipo di dato di base in Matlab è la matrice (più generalmente un insieme multidimensionale) Uno scalare è una matrice 1X1 Un vettore è una matrice 1Xn PON 2007/2013 Matlab 2 - Lavorare con le matrici 2

Lavorare con le matrici È possibile Definire, modificare, visualizzare matrici Esistono Funzioni ed operazioni definite su matrici PON 2007/2013 Matlab 2 - Lavorare con le matrici 3

Creazione di matrici Per inserire una matrice si utilizza l operatore [](parentesi quadre) Le matrici vengono inserite per riga Gli elementi di una riga sono separati da virgola (,) o spazio Righe successive sono separate da punto e virgola (;) PON 2007/2013 Matlab 2 - Lavorare con le matrici 4

Esempi >> a=[1 2; 3 4] a = 1 2 3 4 Ricordare che: Matlab automaticamente stampa l output di ogni comando Per eliminare questa risposta è necessario terminare il comando con un ; Non c è nessun bisogno di dimensionare la matrice; Matlab infatti attribuisce automaticamente la memoria richiesta PON 2007/2013 Matlab 2 - Lavorare con le matrici 5

Vettori I vettori sono matrici ad una dimensione (1 riga ed un numero variabile di colonne) Vettore riga riga = [1 2 3 4] colonna = [1; 2; 3; 4] b = riga'; trasposta PON 2007/2013 Matlab 2 - Lavorare con le matrici 6

Generazione automatica 1 In Matlab è possibile generare automaticamente delle matrici con caratteristiche particolari Matrice di zeri zeros(numrighe, NumColonne) Matrice di uno ones(numrighe, NumColonne) PON 2007/2013 Matlab 2 - Lavorare con le matrici 7

Generazione automatica 2 Matrice identità eye(dimensione) eye(numrighe, NumColonne) Crea una matrice contenente una matrice identità grande min{numrighe, NumColonne}, tutti gli altri elementi sono posti a 0 >> eye(2) ans = 1 0 0 1 >> eye(2,3) ans = 1 0 0 0 1 0 >> eye(3,2) ans = 1 0 0 1 0 0 PON 2007/2013 Matlab 2 - Lavorare con le matrici 8

Generazione automatica 3 Matrice vuota x = [] Matrice casuale rand(numrighe, NumColonne) numeri scelti tra 0 ed 1 Se si omette NumColonne, la matrice creata sarà quadrata PON 2007/2013 Matlab 2 - Lavorare con le matrici 9

Operazioni su matrici 1 Trasposta A' Dimensione size(a) Numero righe size(a,1) Numero colonne size(a,2) PON 2007/2013 Matlab 2 - Lavorare con le matrici 10

Operazioni su matrici 2 Diagonale diag(a) Inversa inv(a) Determinante det(a) Autovalori eig(a) PON 2007/2013 Matlab 2 - Lavorare con le matrici 11

Esempi a=rand(3,3) a = 0.3529 0.1389 0.6038 0.8132 0.2028 0.2722 0.0099 0.1987 0.1988 >> diag(a) ans = 0.3529 0.2028 0.1988 >> det(a) ans = 0.0694 >> inv(a) ans = -0.1985 1.3307-1.2190-2.2902 0.9248 5.6892 2.2990-0.9904-0.5963 >> eig(a) ans = 0.8417-0.0436 + 0.2839i -0.0436-0.2839i PON 2007/2013 Matlab 2 - Lavorare con le matrici 12

Operazioni tra matrici Le matrici devono avere dimensioni compatibili, vengono applicate le regole dell algebra lineare * \ / prodotto divisione sinistra Se A è una matrice quadrata, A\B = inv(a)*b A/B = (B'\A')' divisione destra PON 2007/2013 Matlab 2 - Lavorare con le matrici 13

Esempio moltiplicazione >> a=rand(2,3) a = 0.6813 0.8318 0.7095 0.3795 0.5028 0.4289 >> b=rand(3,2) b = 0.3046 0.6822 0.1897 0.3028 0.1934 0.5417 >> c=a*b c = 0.5025 1.1009 0.2939 0.6434 PON 2007/2013 Matlab 2 - Lavorare con le matrici 14

Divisione sinistra Se A è una matrice nxn e B è un vettore colonna con n componenti (oppure una matrice composta da vari vettori colonna con n componenti), allora X = A\B è la soluzione dell equazione A X = B calcolata con il metodo di eliminazione di Gauss PON 2007/2013 Matlab 2 - Lavorare con le matrici 15

Esempio >> b=rand(3,1) b = >> a=rand(3,3) a = 0.1509 0.8600 0.4966 0.6979 0.8537 0.8998 0.3784 0.5936 0.8216 0.3420 0.2897 0.3412 >> c=a\b c = -0.4413 0.2024 0.4723 PON 2007/2013 Matlab 2 - Lavorare con le matrici 16

Operazioni componente per componente Operazioni elemento per elemento, le matrici devono avere le stesse dimensioni, oppure un operando deve essere uno scalare + somma - sottrazione./ divisione.* prodotto.^ potenza Per gli scalari si può omettere il punto (.) PON 2007/2013 Matlab 2 - Lavorare con le matrici 17

Esempio di.* e.^ >> a=2*ones(2,3) a = 2 2 2 2 2 2 >> b=3*ones(2,3) b = 3 3 3 3 3 3 >> c=a.*b c = 6 6 6 6 6 6 >> d=a.^b d = 8 8 8 8 8 8 PON 2007/2013 Matlab 2 - Lavorare con le matrici 18

Esercizi 1 Date le matrici -7 16 6-5 A 4 9 B 12-2 C -3-9 6 8 Utilizzare Matlab per Calcolare A+B+C, A-B+C, A*B+C Verificare la proprietà associativa (A+B)+C = A+(B+C) PON 2007/2013 Matlab 2 - Lavorare con le matrici 19

Esercizi 2 Date le matrici A 64 32 24-16 B 16-4 6-2 Utilizzare Matlab per Calcolare il prodotto di A per B elemento per elemento Calcolare il risultato di A diviso B applicando la divisione destra elemento per elemento Elevare al cubo gli elementi di B PON 2007/2013 Matlab 2 - Lavorare con le matrici 20

Esercizi 3 Creare due matrici A e B con 5 righe e 7 colonne contenenti elementi casuali Memorizzare in 5 variabili distinte il risultato dell applicazione dei seguenti operatori + somma - sottrazione./ divisione.* prodotto.^ potenza PON 2007/2013 Matlab 2 - Lavorare con le matrici 21

Operatore : È utilizzato per creare vettori o per selezionare parti di matrici L operatore : è utilizzato per individuare un ciclo con incremento unitario inizio:fine (inizio < fine) Esiste anche la forma con un incremento non unitario e non intero inizio:incremento:fine PON 2007/2013 Matlab 2 - Lavorare con le matrici 22

Esempi >> a=[1:4] a = 1 2 3 4 >> c=[1:2:10] c = 1 3 5 7 9 >> d=[1:0.3:1.6] d = 1.0000 1.3000 1.6000 >> 3:-1:1 ans = 3 2 1 0:pi/4:pi ans = 0 0.7854 1.5708 2.3562 3.1416 PON 2007/2013 Matlab 2 - Lavorare con le matrici 23

Matrici generate con l operatore : Si possono creare facilmente matrici con particolari caratteristiche sfruttando l operatore : >> a=[1:4;4 5 6 5; 4:7] a = 1 2 3 4 4 5 6 5 4 5 6 7 >> b=[0:pi/4:pi;5:-1:1;1:0.25:2] b = 0 0.7854 1.5708 2.3562 3.1416 5.0000 4.0000 3.0000 2.0000 1.0000 1.0000 1.2500 1.5000 1.7500 2.0000 PON 2007/2013 Matlab 2 - Lavorare con le matrici 24

Esercizi 1 Generare una matrice di due righe e cinque colonne La prima riga contiene i primi 5 numeri pari La seconda contiene i primi 5 numeri dispari Generare una matrice 3X7 Prima riga: Numeri da 7 ad 1 Seconda riga: Numeri da 8 a 14 Terza riga: Numeri da 1 a 3 e da 3 a 0 PON 2007/2013 Matlab 2 - Lavorare con le matrici 25

Esercizi 2 Creare un vettore con elementi che partono da cos(0) fino a log 10 (100) intervallati di 0.02 Quanti elementi contiene il vettore? Creare un vettore con elementi che partono da sin(-π/2) fino a cos(0) intervallati di 0.05 PON 2007/2013 Matlab 2 - Lavorare con le matrici 26

Concatenazione di matrici Una matrice può essere composta tramite concatenazione da più matrici, basta che le dimensioni siano compatibili È sufficiente indicare come elemento di una matrice un altra matrice A = [C D; E] PON 2007/2013 Matlab 2 - Lavorare con le matrici 27

Esempi c=zeros(1,3); d=[3:5]; e=[7:-1:2]; a=[c d; e]; >> a a = 0 0 0 3 4 5 7 6 5 4 3 2 >> a=[zeros(2,2) ones(2,2) rand(2,2)] a = 0 0 1.0000 1.0000 0.9501 0.6068 0 0 1.0000 1.0000 0.2311 0.4860 PON 2007/2013 Matlab 2 - Lavorare con le matrici 28

Esercizi Generare un vettore di 10 numeri interi scelti a caso nell intervallo [1,10] Utilizzare Matlab per creare la tabellina del 4 (non createla a mano ) Utilizzare Matlab per creare la Tavola Pitagorica PON 2007/2013 Matlab 2 - Lavorare con le matrici 29

Selezionare elementi 1 Per selezionare l elemento della matrice A alla riga r colonna c è sufficiente scrivere A(r,c) Per selezionare la riga r A(r,:) Per selezionare la colonna c A(:,c) PON 2007/2013 Matlab 2 - Lavorare con le matrici 30

Selezionare elementi 2 Per selezionare una sottomatrice A(r 1 :r 2,c 1 :c 2 ) Righe da r 1 a r 2 colonne da c 1 a c 2 A([r 1 r 2 r f ],[c 1 c 2 c g ]) Righe r 1, r 2,, r f colonne c 1, c 2,,c g PON 2007/2013 Matlab 2 - Lavorare con le matrici 31

Selezionare elementi 3 Per selezionare una sottocolonna A(r 1 :r 2,c) A([r 1 r 2 r f ],c) Per selezionare una sottoriga A(r,c 1 :c 2 ) A(r,[c 1 c 2 c g ]) La parola chiave end indica la fine della riga/colonna PON 2007/2013 Matlab 2 - Lavorare con le matrici 32

Esempi >> a=rand(3,4) a = 0.4660 0.5252 0.8381 0.3795 0.4186 0.2026 0.0196 0.8318 0.8462 0.6721 0.6813 0.5028 >> a(1,:) ans = 0.4660 0.5252 0.8381 0.3795 >> a(:,3) ans = 0.8381 0.0196 0.6813 >> a(2:3,3:4) ans = 0.0196 0.8318 0.6813 0.5028 PON 2007/2013 Matlab 2 - Lavorare con le matrici 33

Cancellare righe o colonne Per cancellare la riga r si usa A(r,:) = [] Per cancellare la colonna c si usa A(:,c) = [] Per cancellare gruppi di righe si usa A([r 1 r 2 r k ],:) = [] Per cancellare gruppi di colonne si usa A(:,[c 1 c 2 c k ]) = [] PON 2007/2013 Matlab 2 - Lavorare con le matrici 34

Funzioni su matrici Tutte le funzioni matematiche di base (round, ceil, floor, sin, cos, ) possono essere applicate direttamente a tutti gli elementi di una matrice o di un vettore sin(x), floor(x), In realtà, qualsiasi funzione che ha come argomento un numero può essere applicata direttamente ad una matrice PON 2007/2013 Matlab 2 - Lavorare con le matrici 35

Esempio >> a=rand(1,4) a = 0.9501 0.2311 0.6068 0.4860 >> sin(a) ans = 0.8135 0.2291 0.5703 0.4671 >> round(a) ans = 1 0 1 0 PON 2007/2013 Matlab 2 - Lavorare con le matrici 36

Esercizi 1 Supponendo che x assuma i valori 1, 1.2, 1.4,, 5, utilizzare Matlab per calcolare il vettore Y derivante dalla funzione y=7sin(4x). Quanti elementi conterrà il vettore Y? Generare una matrice 4x7 A di numeri casuali. Ricavare da A una matrice B costituita dagli elementi delle colonne pari e delle righe dispari di A PON 2007/2013 Matlab 2 - Lavorare con le matrici 37

Esercizio 2 Utilizzare Matlab per creare una tabella in cui nella prima riga ci sono gli elementi da 1 a 10; nella seconda gli stessi elementi elevati al quadrato; nella terza, le potenze di due degli elementi della prima riga PON 2007/2013 Matlab 2 - Lavorare con le matrici 38

Esercizio 3 Creare una matrice casuale A 4x4 Creare una matrice B 4x3 formata da tutti gli elementi compresi tra la seconda e quarta colonna di A Creare una matrice C 3x4 formata da tutti gli elementi compresi tra la seconda e quarta riga di A Creare una matrice D 2x3 formata da tutti gli elementi delle prime due righe e delle ultime tre colonne di A PON 2007/2013 Matlab 2 - Lavorare con le matrici 39

Esercizio 4 Generare una matrice casuale 4x3 e la matrice B=ln(A) Moltiplicare la seconda colonna di B per la prima colonna di A Calcolare il valore massimo del vettore risultante dalla moltiplicazione elemento per elemento della seconda colonna di B per la prima colonna di A Calcolare la somma della divisione, elemento per elemento, della prima riga di A per i primi tre elementi della prima colonna di B PON 2007/2013 Matlab 2 - Lavorare con le matrici 40