Programmazione Matlab

Похожие документы
Grafici tridimensionali

MATLAB Elementi di grafica Costrutti di programmazione

UD4 - MATLAB. M-file. Efficienza degli algoritmi. Formati d uscita

Introduzione all ambiente MATLAB. Richiami II. Calcolo Numerico - A.A. 2008/09

Metodi di Analisi dei Dati Sperimentali. AA 2009/2010 Pier Luca Maffettone. Elementi di Matlab

MATLAB c. Lucia Gastaldi Dipartimento di Matematica Lezione 4 (15 ottobre 2003)

ESERCITAZIONE MATLAB

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

Prove d esame Esercizi con Matlab

Metodi iterativi per equazioni nonlineari.

Introduzione al MATLAB c Parte 3 Script e function

MATLAB - Programmazione - 2. Antonino Polimeno

Cos è un algoritmo. Si dice algoritmo la descrizione di un metodo di soluzione di un problema che sia

Introduzione a Matlab Costruzione di Macchine 2 Prof. Sergio Baragetti

Metodi per la risoluzione di equazioni non lineari

Mini-Corso di Informatica

CORSO DI LABORATORIO DI INFORMATICA

Lezioni su MATLAB. Ingegneria Civile/Meccanica

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

Programmazione web lato client con JavaScript. Marco Camurri 1

Introduzione al MATLAB c Parte 2 Funzioni

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

4. I moduli in Access 2000/2003

Introduzione a Matlab

Lezione 16. Il Software di base

Laboratorio 10 Metodi Bisezione e Newton

Introduzione a Matlab

Laboratorio di Calcolo Numerico

Esercizi d esame. Elena Tundo

Finestre grafiche. >> figure >> figure(n)

Corso di Matematica per la Chimica

Matlab. Istruzioni condizionali, cicli for e cicli while.

Lezione 6 programmazione in Java

Derivazione numerica. Introduzione al calcolo numerico. Derivazione numerica (II) Derivazione numerica (III)

Costrutti condizionali e iterativi

Cognome e Nome : Corso e Anno di Immatricolazione: Modalità di Laboratorio (Progetto/Prova) :

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

19 - Eccezioni. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

Laboratorio di Informatica

UNIVERSITÀ DEGLI STUDI DI PAVIA FACOLTÀ DI INGEGNERIA. Matlab: esempi ed esercizi

Laboratorio 2. Calcolo simbolico, limiti e derivate. Metodo di Newton.

Tipi di linea. Tipi di Linea - R.Virili 1

Compitino di Laboratorio di Informatica CdL in Matematica 13/11/2007 Teoria Compito A

Università degli studi di Roma Tor Vergata Ingegneria Medica Informatica I Programma del Corso

6 - Blocchi e cicli. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

Esercitazioni con GNU Octave

Introduzione al MATLAB c Parte 2

Laboratorio di Python

Problema. Equazioni non lineari. Metodo grafico. Teorema. Cercare la soluzione di

Excel & VBA. Excel e Visual Basic for Application

Introduzione a MATLAB INTRODUZIONE A MATLAB

Algoritmi e dintorni: La radice quadrata Prof. Ettore Limoli. Formule iterative

Formalismi per la descrizione di algoritmi

File binari e file di testo

CONTROLLI AUTOMATICI E AZIONAMENTI ELETTRICI Ingegneria Meccatronica

Indice. Prefazione. 3 Oggetti e Java 53

Allocazione dinamica della memoria: calloc() Se T è il nomed di un tipo, la chiamata calloc(n, sizeof(t)) è equivalente a malloc(n * sizeof(t))

Introduzione a Matlab

Laboratorio 2. Calcolo simbolico, successioni, limiti e derivate

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

Fondamenti di Informatica

LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO III Indice

MANUALE MATLAB. Nel manuale proposto ci soffermeremo ad osservare alcune funzioni proposte da Matlab inerenti all attività di laboratorio.

Uso di base dell ordinamento di dati in Microsoft Excel

Input/Output. Console e File.

Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore

Introduzione alla programmazione

Diagramma a blocchi per la selezione, in un mazzo di chiavi, di quella che apre un lucchetto

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

Fondamenti di Informatica

Algoritmi, Strutture Dati e Programmi. UD 2.b: Programmazione in Pascal

Транскрипт:

MatLab Lezione 2

Programmazione Matlab

MATLAB vs. C++ File sorgente C++: sono trasformati in linguaggio macchina dal compilatore; MATLAB: sono interpretati; Tipi di dato C++: è necessario specificare il tipo di dato affinchè il compilatore possa allocare le quantità di memoria in maniera appropriata; MATLAB: esiste unici tipo di dato. L'interprete si occupa dell'allocazione dinamica della memoria; Librerie C++: vanno specificate le librerie da caricare; MATLAB: tutte le funzioni di libreria sono immediatamente disponibili. Vanno caricati solo i toolbox;

Selezione: if MATLAB if condizione istruzioni elseif condizione istruzioni else istruzioni end C++ if ( condizione ) { istruzioni } else if ( condizione ) { istruzioni } else { istruzioni } Nota istruzioni ::= istruzione_1; ; istruzione_n;

Ciclo Iterativo while MATLAB while condizione istruzioni end C++ while ( condizione ) { istruzioni } Nota istruzioni ::= istruzione_1; ; istruzione_n;

Ciclo Iterativo for var : variabile di ciclo, utilizzata per contare le iterazioni MATLAB for var = inizio [: passo] : fine istruzioni end C++ for (var = ini_val; var <= fin_val; var++) { istruzioni } Nota istruzioni ::= istruzione_1; ; istruzione_n;

Script

Matlab Script (1/4) E possibile memorizzare una sequenza di comandi Matlab usando la primitiva diary path\nomescript.m. Tale primitiva apre un file, dopodiché tutto ciò che appare nell ambiente Matlab viene memorizzato in tale file. Quando viene digitata nuovamente la primitiva diary, la memorizzazione viene terminata ed il file viene chiuso.

MatLab Script (2/4) A questo punto selezionando open dal menu file è possibile aprire con l editor di MatLab lo script composto per leggerlo o per modificarlo. Se durante la digitazione viene commesso un errore, tale errore verrà comunque memorizzato nello script. Lo script deve essere ripulito dalle sequenze di caratteri errate che in esso eventualmente compariranno. Effettuate tutte le correzioni lo script potrà essere richiamato semplicemente digitandone il nome al prompt MatLab.

Matlab Script (3/4) Esempio Supponiamo che il file dati.mat contenga tre vettori: x = linspace (0,4,1000); y = 1./(1-x.^2+log(x+3)); z = [0 4 10 10]; Si vuole ora costruire uno script che: legga i dati da disco tracci il grafico di y = f(x) nell intervallo [0,4] con ordinate comprese in [-10,10].

Matlab Script (4/4) >> diary grafico_1.m; >> load dati; >> plot(x,y,.b ); >> axis(z); >> grid; >> diary correzioni >> grafico_1

Funzioni

Funzioni in Matlab Una funzione Matlab inizia con l intestazione function [parametri di uscita] = nome_function (parametri di ingresso) istruzione 1; istruzione n; La funzione va salvata in un file con estensione.m (es. nomefunz.m) e richiamata con il comando [parametri di uscita] = nomefunz (parametri di ingresso)

Scrivere una Funzione Per salvare una funzione in file è possibile usare il comando new dal menù file e scegliere M-file In questo modo si apre l editor MatLab per scrivere M-file

Esercizio: soluzione di un equazione (1/2) Esercizio Dato l intervallo [a, b] e la funzione f monotona nell intervallo [a,b]. Si supponga che il valore di f(a) abbia segno opposto al valore di f(b). Scrivere una funzione Matlab che calcoli il valore dello zero di f, ossia la soluzione dell equazione f(x) = 0 con una fissata tolleranza tol. file testfun.m function y = testfun(x) y = x*log(x)*sin(x);

Esercizio: soluzione di un equazione (2/2) function z = zero(f,a,b,tol) s = feval(f,a) <0; while abs(a-b) >= tol; x = (a+b)/2; t = feval(f,x) <0; if t = = s a = x; else b = x; end end z=(a+b)/2; f è una stringa contenente l espressione analitica della funzione Ad ogni iterazione viene dimezzato l intervallo in cui è cercato lo zero >> zero(@testfun, 3, 4,.001) >> ans = 3.1445

Esercizio: grafico di una funzione (1/4) Esercizio Sia f una funzione, definita nell intervallo [a, b] e sia n il numero di campioni su cui è valutata la funzione. Scrivere una funzione Matlab che disegni il grafico di f(x) nell intervallo [a,b].

Esercizio: grafico di una funzione (2/4) function y = grafico(f,in,fin,n) % usage: grafico[function,first_value,last_value,points]; % function is a vector of n points figure(1); x = linspace(in,fin,n); for i=1:n y(i)=feval(f,x(i)); end plot(x,y); title('y = f(x)'); xlabel('x'); ylabel('y'); hold on; plot(x,0,'k'); hold off;

Esercizio: grafico di una funzione (3/4) A questo punto la funzione viene scritta nel file testfun.m e può essere richiamata dal prompt Matlab. file testfun.m function y = testfun(x) y = exp(-2*x).*sin(4*x); >> y = grafico(@testfun, 0, 2, 1000);

Esercizio: grafico di una funzione (4/4)