Introduzione a Matlab
|
|
|
- Giada Cappelli
- 8 anni fa
- Просмотров:
Транскрипт
1 INFORMATICA B Ingegneria Elettrica Introduzione a Matlab
2 Introduzione a Matlab Matlab (MATrix LABoratory) è uno strumento per il calcolo scientifico ed ingegneristico Matlab facilita lo sviluppo di programmi che eseguono complesse elaborazioni di calcolo numerico grazie a: Un ambiente di sviluppo integrato ed uno specifico linguaggio di programmazione Una ricca libreria di funzioni matematiche Matlab può essere scaricato da: La licenza gratuita è fornita agli studenti dal Politecnico 2
3 L ambiente di sviluppo di Matlab L editor di testo può essere utilizzato per scrivere programmi La command window permette di inserire comandi che vengono immediatamente eseguiti e visualizza i risultati di ciascuna istruzione eseguita Il workspace mostra le variabili definite dalle istruzioni eseguite finora 3
4 Il linguaggio Matlab È un linguaggio di alto livello È un linguaggio orientato alle elaborazioni Offre specifiche operazioni per matrici Offre una vasta gamma di funzioni matematiche È un linguaggio interpretato Non richiede la compilazione in codice macchina Le istruzioni inserite sono direttamente eseguite Non è un linguaggio tipizzato Non occorre dichiarare le variabili Non è necessario specificare il tipo delle variabili Alla stessa variabile è possibile assegnare valori di tipi diversi durante l esecuzione dello stesso programma 4
5 Variabili e array L unità fondamentale di dati in Matlab è l array Ogni variabile è un array Gli scalari sono array di dimensione 1x1 La definizione dei nomi delle variabili è simile a quella del C Matlab è un linguaggio a tipizzazione debole Le variabili sono create quando viene effettuata l inizializzazione (il primo assegnamento) Il tipo della variabile è determinato dal valore che contengono (tipo dinamico!) Parleremo dopo dei tipi di dato... 5
6 Creazione di una variabile per assegnamento Scalari (array di dimensione 1x1) a = 3 b = 55 Array arr = [ ] Matrici matr = [3 4 2; 4 5 6] Gli elementi sulla stessa riga possono essere separati mediante uno spazio o una virgola Le righe sono separate da punto e virgola 6
7 Assegnamenti ed accesso agli array Indicizzazione dell array L accesso ad una specifica posizione viene effettuato specificando l indice tra parentesi tonde Se l array ha più dimensioni, bisogna separarle gli indici con virgole Gli indici iniziano da 1 Esempio: esecuzione dei seguenti comandi a = [0 7+1]; b = [a(2) 5 a]; Risultato a = [0 8] b = [ ] Contenuto di a Secondo elemento di a 7
8 Inizializzazione di default delle variabili Non tutti gli elementi devono essere specificati alla creazione Alle posizioni non inizializzate viene assegnato il valore di default 0 Esempio: c(2,3) = 5; 8
9 Modifica della dimensione dell array È possibile estendere la dimensione dell array dopo la sua creazione assegnando un valore ad una posizione ancora non esistente Esempio: d = [2 5]; d(4) = 2; 9
10 Trasposizione dell array L operatore apice ' ci permette di calcolare l array trasposto Esempio: d = [ ]; g = d'; 10
11 Enumerazione di una serie di valori È possibile enumerare implicitamente una serie di valori specificando limite inferiore, passo e limite superiore separati dal simbolo : : inf:passo:sup La specifica del passo è facoltativa (di default viene usato 1) Esempio: x = 1:2:10; Risultato: x = [ ] Altro esempio: l = 3:-1:1; m = [l' l']; Risultato: m = [ 3 3 ; 2 2; 1 1] 11
12 Accesso contemporaneo più posizioni di un array Si può usare il simbolo : al posto di un indice per accedere a tutti gli elementi su quella dimensione a = [1 2 3; 4 5 6; 7 8 9]; b = a(:,1); c = a(2,:); 12
13 Accesso contemporaneo più posizioni di un array È possibile utilizzare un array contenente una serie di numeri per specificare più posizioni a cui accedere d = a([1,2], [3,1]) e = a(4) Attenzione: la linearizzazione dell array avviene per colonne f = a(:)' 13
14 Assegnamenti di array e scalari ad array È possibile assegnare uno scalare a tutte le celle di un array o ad una sottoparte Esempio: m(1:4,1:3)=3 m(1:2,1:2)=4 14
15 Assegnamenti di array e scalari ad array È possibile fare più assegnamenti contemporanei tra array Le dimensioni dei due array sulla sinistra e sulla destra dell assegnamento devono essere uguali Esempio: m(1:4,1:3)=3 m(1:2,1:2)=4 m1(2:3,4)=m(1:2,1) 15
16 Funzioni predefinite 16
17 Esempi di utilizzo delle funzioni predefinite Esempio: a = zeros(2); b = zeros(2,3); c = [1 2; 3 4]; d = size(c); e = zeros(size(c)); 17
18 Tipo double Una variabile di tipo double contiene uno scalare o un array di numeri in doppia precisione (64 bit) Il tipo double permette di rappresentare Valori reali var1 = -10.7; Valori immaginari var2 = 4i; var3 = 4j; Valori complessi var3 = i; (i e j sono sinonimi) Tutti gli array che abbiamo visto finora erano di tipo double 18
19 Tipo char Le stringhe sono array di caratteri (codificati con 16 bit) Le stringhe sono specificate tra apici singoli Esempio: commento = 'questa è una stringa'; Crea un array di dimensione 1x20 contenente caratteri 19
20 Variabili speciali 20
21 Variabili speciali Attenzione: il valore delle variabili predefinite può essere modificato mediante un assegnamento Esempio: circ1 = 2*pi*10; pi = 5; circ2 = 2*pi*10; circ1 = circ2 = 100 È fortemente sconsigliato modificare il valore delle variabili 21
22 Operazioni su array e su scalari Tutte queste operazioni sono anche definite su scalari (visto che lo scalare è una matrice 1x1) 22
23 Operazioni su scalari e su array Gli operatori +, -, *, / implementano le operazioni matematiche tra matrici (e tra scalari) Somma: Moltiplicazione tra matrici: 23
24 Operazioni su scalari e su array Gli operatori.*,.^,./,.\ sono degli operatori che eseguono l operazione specificata tra elementi in posizioni corrispondenti delle due matrici operande 24
25 Operazioni su scalari e su array Gli operatori possono essere usati anche tra una matrice e uno scalare (l operazione verrà eseguita su ciascun elemento della matrice e lo scalare) Esempio: 25
26 Matrix left division L operatore Matrix left division permette di risolvere con una sola istruzione sistemi di equazioni in n incognite Problema: Calcolo della soluzione: x = A\B; x: vettore incognite A: matrice dei coefficienti B: vettore dei termini noti 26
27 Altre funzioni Ne vedremo molte altre negli esercizi Il comando help <nome_funzione> mostra la guida sulla funzione 27
28 min e max Se min e max sono applicati su array, restituiscono il valore minimo o massimo Esempio: x = [ ] y = min(x); Risultato: y = 1 Esempio: x = [ ] [y z] = min(x); Risultato: y = 1 z = 4 28
29 min e max Se min e max sono applicati su matrici, restituiscono un vettore contenete i valori minimi/massimi di ciascuna colonna Esempio: x = [7 1; 1 9] y = min(x); Risultato: y = [3 1] Esempio: x = [7 1; 1 9] [y z] = min(x); Risultato: y = [3 1] z = [2 1] 29
30 Diagrammi in 2 dimensioni In Matlab i diagrammi bidimensionali vengono disegnati mediante un insieme ordinato di coppie che rappresentano coordinate di punti che sono connessi tramite una linea spezzata Esempio: x = -10:0.1:10; y=x.^3; plot(x,y); xlabel('ascisse'); ylabel('ordinate'); title('cubica'); 30
Matlab: Variabili e Array. Informatica B
Matlab: Variabili e Array Informatica B Array e variabili L unità fondamentale di dati in MATLAB è l array Una variabile in MATLAB è una regione di memoria che contiene un array Ha un nome definito dall
Scilab. Introduzione a Scilab - Vettori. Corso di Informatica CdL: Chimica. Claudia d'amato.
Scilab Corso di Informatica CdL: Chimica Introduzione a Scilab - Vettori Claudia d'amato [email protected] Scilab Introduzione Ambiente matematico e di simulazione numerica sviluppato per la realizzazione
INTRODUZIONE A MATLAB
INTRODUZIONE A MATLAB INTRODUZIONE A MATLAB MATLAB (MATrix LABoratory) è un linguaggio di programmazione per applicazioni scientifiche (elaborazione numerica dei segnali, progetto di simulatori, sintesi
Esercitazione 1: Introduzione a MATLAB
Laboratorio di Immagini Esercitazione 1: Introduzione a MATLAB Mauro Zucchelli 09/03/2016 MATLAB Cos è MATLAB? MATLAB Cos è MATLAB? MATLAB non è un linguaggio di programmazione MATLAB Cos è MATLAB? MATLAB
Costanti e Variabili
Parte 3 Costanti e Variabili Identificatori Un identificatore è un nome che viene associato a diverse entità (costanti, tipi, variabili, funzioni, ecc.) e serve ad identificare la particolare entità Gli
Caratteristiche di un linguaggio ad alto livello
Caratteristiche di un linguaggio ad alto livello Un linguaggio ad alto livello deve offrire degli strumenti per: rappresentare le informazioni di interesse dell algoritmo definire le istruzioni che costituiscono
1) Matlab e simulazione. 2) Esempi di utilizzo. Mauro De Sanctis corso di Informazione e Codifica Università di Roma Tor Vergata
Argomenti della Lezione 1) Matlab e simulazione 2) Esempi di utilizzo 1 Mauro De Sanctis corso di Informazione e Codifica Università di Roma Tor Vergata Matlab è un sistema di programmazione ad alto livello
Lezione 6 Introduzione al C++ Mauro Piccolo
Lezione 6 Introduzione al C++ Mauro Piccolo [email protected] Linguaggi di programmazione Un linguaggio formale disegnato per descrivere la computazione Linguaggi ad alto livello C, C++, Pascal, Java,
Strumenti per il calcolo numerico Matlab/Octave
Strumenti per il calcolo numerico Matlab/Octave Marco D. Santambrogio [email protected] Ver. aggiornata al 13 Agosto 2014 Obiettivi Benvenuti nel fantastico mondo di Matlab/Octave! 2 Matlab
Introduzione al MATLAB c Parte 3 Script e function
Introduzione al MATLAB c Parte 3 Script e function Lucia Gastaldi DICATAM - Sezione di Matematica, http://lucia-gastaldi.unibs.it Indice 1 M-file di tipo Script e Function Script Function 2 Gestione dell
Vettori Matrici Grafi Introduzione al Fuzzy-tool. Renato Mainetti
Vettori Matrici Grafi Introduzione al Fuzzy-tool Renato Mainetti Vettore In Matematica: Un vettore è un elemento di uno spazio vettoriale. I vettori sono quindi elementi che possono essere sommati fra
Introduzione alla programmazione in linguaggio C
Introduzione alla programmazione in linguaggio C Il primo programma in C commento Header della libreria Funzione principale Ogni istruzione in C va terminata con un ; Corso di Informatica AA. 2007-2008
Strumenti per il calcolo numerico Matlab/Octave
Strumenti per il calcolo numerico Matlab/Octave Marco D. Santambrogio [email protected] Ver. aggiornata al 2 Dicembre 2016 Compitini Se non per il 7/12@3am 2 Compitini Se non per il 7/12@3am
Metodi di Analisi dei Dati Sperimentali. AA 2009/2010 Pier Luca Maffettone. Elementi di Matlab
Metodi di Analisi dei Dati Sperimentali AA /2010 Pier Luca Maffettone Elementi di Matlab Sommario Introduzione Variabili Manipolazione di elementi Creazione di vettori/matrici Operazioni elementari Funzioni
Le classi in java. Un semplice programma java, formato da una sola classe, assume la seguente struttura:
Le classi in java Un semplice programma java, formato da una sola classe, assume la seguente struttura: class Domanda static void main(string args[]) System.out.println( Quanti anni hai? ); La classe dichiarata
Array multidimensionali e stringhe
Andrea Marin Università Ca Foscari Venezia Laurea in Informatica Corso di Programmazione part-time a.a. 2011/2012 Array uni-dimensionali (richiami) Dichiarazione: int vet[100]; float x[50]; Gli elementi
MATLAB Elementi di grafica Costrutti di programmazione
MATLAB Elementi di grafica Costrutti di programmazione Operazioni punto Le operazioni punto agiscono su array che abbiano le stesse dimensioni:.* prodotto elemento per elemento./ divisione elemento per
Vettori e Matrici. Vettori. Vettori e matrici: dati. Vettori di caratteri Polinomi. Dimensione (Size) numero di righe e di colonne della matrice
Vettori e Matrici Vettori e matrici: Creazione Matrici particolari Vettori regolarmente intervallati Coordinate Operatori utili Vettori di caratteri Polinomi Vettori Unità fondamentale in Matlab Tutte
Vettori e Matrici. Corso di Calcolo Numerico. 24 Aprile 2018
Vettori e Matrici 24 Aprile 2018 Richiami In MATLAB, ogni variabile ha una struttura di tipo vettoriale o array. Un array è un insieme di valori ordinati, cioè memorizza più dati all interno di una struttura
Dati aggregati. Violetta Lonati
Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica - in breve: Definizione di tipi Array Stringhe Strutture
MATLAB I/O. Informatica B - A.A. 2012/2013 ACQUISIZIONE DI INPUT DA TASTIERA
MATLAB I/O Informatica B - A.A. 2012/2013 ACQUISIZIONE DI INPUT DA TASTIERA Funzione input valore = input( inserisci un valore ); Matlab stampa a video la stringa inserisci un valore ed aspetta di ricevere
I tipi strutturati e i record in C++
I tipi strutturati e i record in C++ Docente: Ing. Edoardo Fusella Dipartimento di Ingegneria Elettrica e Tecnologie dell Informazione Via Claudio 21, 4 piano laboratorio SECLAB Università degli Studi
3. Matrici e algebra lineare in MATLAB
3. Matrici e algebra lineare in MATLAB Riferimenti bibliografici Getting Started with MATLAB, Version 7, The MathWorks, www.mathworks.com (Capitolo 2) Mathematics, Version 7, The MathWorks, www.mathworks.com
Le basi del linguaggio Java
Le basi del linguaggio Java Compilazione e interpretazione Quando si compila il codice sorgente scritto in Java, il compilatore genera il codice compilato, chiamato bytecode. È un codice generato per una
Gli Array. Dichiarazione di un array
Gli Array Un array rappresenta una variabile indicizzata (ovvero contenente un indice) che viene utilizzata per contenere più elementi dello stesso tipo. Ogni array ha un nome al quale viene associato
Fondamenti di Informatica
Fondamenti di Informatica Introduzione a MATLAB Prof. Christian Esposito Corso di Laurea in Ingegneria Meccanica e Gestionale (Classe I) A.A. 2016/17 Introduzione a MATLAB Avviso per le Prossime Lezioni
MATLAB c. Lucia Gastaldi Dipartimento di Matematica Lezione 4 (15 ottobre 2003)
MATLAB c M-file. Lucia Gastaldi Dipartimento di Matematica http://dm.ing.unibs.it/gastaldi/ Lezione 4 (15 ottobre 2003) Esercizio Problema 3: la successione di funzioni f n (x) = (x 2 x) n per 0 x 1 è
Strutture dati e loro organizzazione. Gabriella Trucco
Strutture dati e loro organizzazione Gabriella Trucco Introduzione I linguaggi di programmazione di alto livello consentono di far riferimento a posizioni nella memoria principale tramite nomi descrittivi
Algoritmi stabili e instabili
Algoritmi stabili e instabili Laboratorio di Calcolo Numerico 13 Marzo 2018 Vettori in MATLAB Finora abbiamo pensato alle variabili utilizzate come semplici valori numerici (variabili scalari). In realtà,
INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica
Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica - Programma Un programma è una formulazione
INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - Programma
Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica - Programma Un programma è una formulazione
Struttura dei programmi C
Programmi C Struttura dei Programmi C Dichiarazione delle variabili Operazioni di Ingresso/Uscita Fondamenti di Informatica 1 Struttura dei programmi C Un programma C deve contenere, nell'ordine: una parte
Foglio Elettronico Lezione 1
- Introduzione - Celle e riferimenti - Formule - Approfondimenti - Funzioni logiche Sommario Introduzione - Foglio elettronico o foglio di calcolo - Cos'è? Strumento per raccogliere dati organizzati in
Problema. Vettori e matrici. Vettori. Vettori
e matrici Ver. 2.4 2010 - Claudio Fornaro - Corso di programmazione in C Problema Si vuole un programma che chieda 10 numeri dalla tastiera e li visualizzi dall ultimo al primo Soluzione attuale (con le
Fogli Elettronici. Idoneità Informatica Prof. Mauro Gaspari
Fogli Elettronici Idoneità Informatica Prof. Mauro Gaspari Cosa è un foglio elettronico. Strumento per raccogliere dati organizzati in tabelle e farci delle operazioni: Le celle contengono numeri o altri
Esercitazione di Reti degli elaboratori
Esercitazione di Prof.ssa Chiara Petrioli Christian Cardia, Gabriele Saturni Cosa vedremo in questa lezione? Gli Array Gli array multidimensionali Le stringhe I puntatori Esercizi Pagina 1 Gli Array Definizione
Introduzione alla programmazione. Alice Pavarani
Introduzione alla programmazione Alice Pavarani Il linguaggio C Creato da Dennis Ritchie nel 1972 presso i Bell Laboratories Linguaggio di programmazione procedurale, strutturato Linguaggio ad alto livello
L AMBIENTE CODE BLOCKS E L IO
L AMBIENTE CODE BLOCKS E L IO Il primo programma #include main() { printf("ciao Mondo!"); } Il file deve essere salvato con estensione.c Il primo programma in C++ #include using
PON 2007 2013 Liceo Scientifico Leonardo da Vinci. Vallo della Lucania
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
Informatica Applicata al Suono Tutorial Matlab
Prof. Mario Malcangi [email protected] MATLAB è un linguaggio di alto livello e un ambiente interattivo per il calcolo numerico, l'analisi e la visualizzazione dei dati e la programmazione. MATLAB consente
Fondamenti di Informatica 6. Algoritmi e pseudocodifica
Vettori e matrici #1 Fondamenti di Informatica 6. Algoritmi e pseudocodifica Corso di Laurea in Ingegneria Civile A.A. 2010-2011 1 Semestre Prof. Giovanni Pascoschi Le variabili definite come coppie
L AMBIENTE CODE BLOCKS E L IO
L AMBIENTE CODE BLOCKS E L IO Il primo programma in C++ #include using namespace std; main() { cout
