FACOLTA DI INGEGNERIA CIVILE

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "FACOLTA DI INGEGNERIA CIVILE"

Transcript

1 1 UNIVERSITA DI PADOVA FACOLTA DI INGEGNERIA CIVILE Corso di calcolo numerico e Programmazione PROGETTO 2: sulla soluzione dei sistemi lineari.

2 2

3 3

4 4

5 5

6 6

7 7

8 8

9 9

10 10

11 11

12 12 Iterate k GRAFICO DEL NUMERO DI ITERAZIONI AL VARIARE DI OMEGA. [ω=1,182;k=16,408] Valori rilevati Regressione polinomiale ,95 1,00 1,05 1,10 1,15 1,20 1,25 1,30 1,35 1,40 1,45 1,50 1,55 ω

13 13 GRAFICO SEMILOGARITMICO DEGLI SCARTI IN FUNZIONE DELLE ITERATE Regressione lineare. Log scarto. 1 0,1 0,01 1E-3 1E-4 1E-5 1E-6 1E-7 1E-8 1E-9 Linear Fit. yscale(y) = A + B * xscale(x) log d k =2,288-0,2996k Parameter Value Error A 2, ,00831 B -0, ,02685E Iterate k

14 14 COMMENTO. ã Si è costruito il programma Fortran che risolve il sistema lineare Ax=b utilizzando lo schema di sovrarilassamento. Si è eseguito il programma 11 volte per ω da 1 a 1,5 procedendo a passi Δω=0,05, si è ottenuto un output dove si è evidenziato il numero di iterazioni eseguite iter e la soluzione finale del sistema Vettore soluzione : ω iter Vettore soluzione: 1, , E+02 1, E+02 1, E+02 1, E+02 1, E+02 1, E+02 1, E+02 1, E+02 1, E+02 1,50 35 La tolleranza utilizzata è di 10-8 e la si è confrontata alle varie iterazioni con la norma euclidea dello scarto (tra l iterata corrente e quella precedente) scarto. ã ã Per determinare il fattore di rilassamento ottimale ω opt in maniera grafica si è riportato in un grafico il numero di iterazioni al variare di ω; si è quindi svolto due regressioni polinomiali del terzo ordine, una per ogni ramo del grafico, ottenendo due curve la cui intersezione (punto di minimo del sistema) individua il punto ω=1,182 cioè il nostro ω opt stimato graficamente. La ragione della regressione polinomiale è dovuta al fatto che il numero di iterate non varia linearmente con omega, prima abbiamo provato con una regressione del secondo ordine ma questa non ha fornito dei risultati qualitativi di buon livello, mentre con una regressione del terzo ordine si è ottenuto una buona rappresentazione del ramo di destra, mentre quello di sinistra per una approssimazione soddisfacente doveva possedere più punti di appoggio. Per determinare il parametro di rilassamento ottimale in modo analitico si sono utilizzati gli scarti dello schema di sovrarilassamento con ω=1 (che corrisponde al metodo di Saidel) con i quali si è stimata la costante asintotica di convergenza M=λ 1,s riportando in un grafico semilogaritmico la norma euclidea dello scarto in funzione di k, su questi punti si è fatta una regressione lineare, ottenendo una retta la cui pendenza è m=-0,2996. Da qui mi possiamo determinare M=λ 1,s =10 m =0, Questa è la stima del raggio spettrale della matrice di iterazione di Saidel, osservato che la matrice è biciclica e coerentemente ordinata possiamo applicare la seguente relazione per la determinazione di ω opt : ω opt = λ 1, s = 1, La discrepanza tra il valore di ω opt trovato per via grafica da quello determinato numericamente, può trovare una giustificazione dalle considerazioni fatte precedentemente, ad ogni modo i due valori si avvicinano, questo a conferma della validità dei metodi applicati e delle formule usate.

15 15 ã Commento sul programma Fortran utilizzato. Il programma principale chiamato sovrarilassamento permette l acquisizione dei dati in input: - coefficienti della matrice; - vettore b (termine noto); - n di iterazioni massimo (itmax); - valore di omega (ome); - tolleranza ammessa (toll). Tutti questi dati vengono acquisiti tramite una istruzione open seguita da dei parametri che indicano il nome della sorgente (il nome del file) e il numero di riferimento assegnato a tale file. Questo programma principale si interessa anche ad eseguire tutte le operazioni di salvataggio dei risultati in un file (inizializzato dal comando open), oltre a questo richiama due sottoprogrammi: - la subroutine SOR - la function EUC. Il primo viene chiamato con il comando call, mentre il secondo è un particolare tipo di sottoprogramma denominato function, il quale fornisce un parametro numerico. 1) Il sottoprogramma subroutine SOR utilizza i dati di input relativi alla sua lista di parametri di scambio (nmax,n,a,b,xold,xnew,tol,itmax,iter,scarto,sc,ome), il cuore di tale programma è un ciclo do wile che implementa il commando iter=iter+1, tale commando viene implementato a ripetizione fino a che lo scarto risulta maggiore della tolleranza ( iter.lt.itmax.and.scarto.gt.tol ); tale ciclo viene implementato anche attraverso l utilizzo della struttura do (tipo particolare di quella while, che viene introdotta perché sono presenti delle variabili di tipo vettore). In questo sottoprogramma viene inoltre determinata la norma euclidea dello scarto dk 2 (utilizzando i valori dati dal sottoprogramma EUC), inoltre viene anche stimato il fattore M di convergenza come rapporto delle norme degli scarti consecutivi M=d k /d k-1. Ed infine viene determinata la velocità asintotica di convergenza R=-log(M). 2) Il sottoprogramma function EUC legge i parametri (nmax,n,x) in input e determina il 2 valore della norma euclidea x = 2 ( x i ). Tutti i risultati vengono quindi visualizzati sul file risultati.ris attraverso l uso di appositi comandi di formattazione e con l uso di formati di testo adatti. Ora vorrei approfondire alcune parti del programma per una sua migliore compressione. Il programma inizia con la dichiarazione delle variabili e della loro identificazione, molto importante è l istruzione iniziale implicit none che istruisce il compilatore a non dichiarare automaticamente le variabili (da usare sempre per evitare errori insidiosi): - integer si usa per rappresentare variabili a valore intero; - parameter serve per dichiarare delle costanti (per esempio nmax); - real*8 si usa per dichiarare delle variabili reali, a fianco è riportata la precisione numerica con la quale esse vengono rappresentate (in questo caso in doppia precisione). Un file viene chiamato tramite il commando open come si è già affermato, da questi file si può leggere o scrivere delle informazioni tramite il semplice utilizzo delle istruzioni read e write. Il comando read è seguito dal numero identificativo del file sorgente e dalla specificazione di quali dati si deve leggere (considerando anche il loro formato di lettura, basti osservare le istruzioni usate per far leggere al programma una matrice). Il commando write è seguito da numero di riferimento del file nel quale si deve scrivere, e dal numero identificativo della formattazione ed infine dai parametri che indicano cosa scrivere. Ora analizziamo dettagliatamente un commando format :

16 16 format (1x, tolleranza:,e8.2,//,1x, numero massimo di iterazioni,i4,/) La prima istruzione 1x introduce uno spazio bianco prima del testo tolleranza, mentre e8.2 è una istruzione di formattazione per un numero espresso in formato scientifico (in questo caso ad esso è riservato 8 cifre totali delle quali 2 per la mantissa), l ultima istruzione i4 formata un numero intero di quattro cifre, se il numero è più corto (sia esso in formato intero o scientifico) vengono introdotti degli spazi bianchi in testa. Il carattere / serve per iniziare una nuova riga di testo, possiamo trovare anche la seguente istruzione f5.2, questo viene usato per stampare dei numeri interi a virgola fissa, dove 5 sono i caratteri disponibili dopo la virgola, mentre 2 è il numero dei decimali. Il programma vero e proprio inizia con la dichiarazione del valore iniziale di ω ome=1, e da un ciclo do while che viene eseguito fino a che omega è minore di 1.51 (è questo ciclo che governa tutto il programma e che ferma la sua esecuzione). Poi con un ciclo do i viene assegnato il valore iniziale di xold(i) e viene chiamato il sottoprogramma SOR (con il commando call) il cuore del programma. Dopo di questo viene stampata la soluzione con i comandi già visti, alla fine il programma principale si conclude con la chiusura del ciclo end do, e la chiusura del programma stesso con le stringhe stop e end. Il cuore del sottoprogramma SOR consiste nell implementazione del metodo del sovrarilassamento: i 1 n ω x = + k + 1, i xk, i bi aij xk + 1, j aij xk, j a ii j= 1 j= 1 do i = 1,n som1 = 0.d0 do j = 1,i-1 som1 = a(i,j)*xnew(j) + som1 end do Questa prima parte dell iterazione risolve una parte dell algoritmo: s om1 = a ij x k j= 1 A questo punto ci interessiamo della seconda parte dell iterazione: som2 = 0.d0 do j = i,n som2 = a(i,j)*xold(j) + som2 end do xnew(i) = xold(i) + ome*(b(i) som1 som2)/a(i,i) end do Questa seconda parte risolve l altro fattore dell algoritmo: i 1 n s om 2 = a ij x k, j j= i Alla fine viene determinato il vettore xnew(i) concludendo l implementazione dell algoritmo. Successivamente tramite un ciclo viene ad essere determinata la norma euclidea dello scarto, in questo punto viene chiamato il secondo sottoprogramma (function) EUC, tramite la seguente istruzione: scarto =euc(nmax,n,sc) (tra parentesi sono indicate le variabili usate dal sottoprogramma). Poi viene determinata la costante asintotica (M) e la velocità asintotica di convergenza (R), tutti i risultati inerenti alla iterata attuale vengono stampati nel file risultati.ris tramite le istruzioni esposte in precedenza. Altra istruzione importante è l azzeramento del ciclo: xold(i) = xnew(i) ; mentre l istruzione return ha la funzione di non far terminare il ciclo ma di far ritornare il compilatore all istruzione di chiamata. L ultima parte del listato è dedicata alla determinazione della norma euclidea tramite il sottoprogramma EUC. + 1, j PROGRAMMI UTILIZZATI: questa relazione è stata impaginata e scritta con il pacchetto Office XP professional. L elaborazione dei dati e dei grafici è stata eseguita con il programma Origin 5.0 (programma di analisi statistica e matematica di dati).

Esercitazione 2. Si vuole risolvere un sistema lineareax=bcostruendo un programma FORTRAN che implementi il metodo SOR

Esercitazione 2. Si vuole risolvere un sistema lineareax=bcostruendo un programma FORTRAN che implementi il metodo SOR Esercitazione 2 Si vuole risolvere un sistema lineareax=bcostruendo un programma FORTRAN che implementi il metodo SOR (ωl+d)x k+1 =[(1 ω)d ωu]x k +ωb utilizzando diversi valori diω, daω=1aω=1.5 con passo

Dettagli

Laboratorio di Calcolo Numerico Laboratorio 4: Grafici di convergenza e functions

Laboratorio di Calcolo Numerico Laboratorio 4: Grafici di convergenza e functions Dipartimento di Matematica Laboratorio di Calcolo Numerico Laboratorio 4: Grafici di convergenza e functions Damiano Pasetto E-mail: pasetto@math.unipd.it Dispense: http://dispense.dmsa.unipd.it/putti/calcolo

Dettagli

Laboratorio di Calcolo Numerico Laboratorio 12: Metodi iterativi per la soluzione di sistemi lineari

Laboratorio di Calcolo Numerico Laboratorio 12: Metodi iterativi per la soluzione di sistemi lineari Laboratorio di Calcolo Numerico Laboratorio 12: Metodi iterativi per la soluzione di sistemi lineari Claudia Zoccarato E-mail: claudia.zoccarato@unipd.it Dispense: Moodle Dipartimento ICEA 24 Maggio 2017

Dettagli

Fortran in pillole : seconda lezione

Fortran in pillole : seconda lezione Fortran in pillole : seconda lezione Annamaria Mazzia Dipartimento di Metodi e Modelli Matematici per le Scienze Applicate Corso di Metodi Numerici per l Ingegneria I predicati Riprendiamo l algoritmo

Dettagli

Calcolo del fattore di convergenza

Calcolo del fattore di convergenza Calcolo del fattore di convergenza Dato uno schema iterativo si ha: lim k x k+1 ξ x k ξ p = M p è l ordine di convergenza del metodo iterativo M è la costante asintotica dell errore o fattore di convergenza.

Dettagli

Soluzione di Equazioni non lineari

Soluzione di Equazioni non lineari Soluzione di Equazioni non lineari Corso di Calcolo Numerico 20 Marzo 2018 Function in MATLAB Lo scopo di una funzione è quello di prendere in input un certo numero di valori, fare alcune operazioni con

Dettagli

Laboratorio di Calcolo Numerico Laboratorio 3: equazioni non lineari

Laboratorio di Calcolo Numerico Laboratorio 3: equazioni non lineari Dipartimento di Matematica Laboratorio di Calcolo Numerico Laboratorio 3: equazioni non lineari Damiano Pasetto E-mail: pasetto@math.unipd.it Dispense: http://dispense.dmsa.unipd.it/putti/calcolo ambientale/index.html

Dettagli

Laboratorio di Calcolo Numerico Laboratorio 4: Functions. Soluzione di Equazioni non lineari

Laboratorio di Calcolo Numerico Laboratorio 4: Functions. Soluzione di Equazioni non lineari Laboratorio di Calcolo Numerico Laboratorio 4: Functions. Soluzione di Equazioni non lineari Claudia Zoccarato E-mail: claudia.zoccarato@unipd.it Dispense: Moodle Dipartimento ICEA 29 Marzo 2017 Function

Dettagli

Modularizzazione del software

Modularizzazione del software Modularizzazione del software Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2006/2007 Fortran 90: Subroutine e function DIS - Dipartimento di informatica e sistemistica

Dettagli

Ciclo do while in FORTRAN

Ciclo do while in FORTRAN Ciclo do while in FORTRAN Vogliamo tradurre in linguaggio FORTRAN un algoritmo che risponde a questo tipo di struttura: Fino a quando e vera questa espressione logica allora: fai questo fai quest altro

Dettagli

Calcolo Numerico (CdS in Matematica) A.A. 2012/13

Calcolo Numerico (CdS in Matematica) A.A. 2012/13 Calcolo Numerico (CdS in Matematica) A.A. 2012/13 Esercitazione di Laboratorio sulla risoluzione di sistemi di equazioni lineari Parte 1. Fattorizzazione di matrici Scrivere una funzione Matlab che implementi

Dettagli

Laboratorio di Calcolo Numerico Laboratorio 3: Algoritmi stabili e instabili Programma gnuplot

Laboratorio di Calcolo Numerico Laboratorio 3: Algoritmi stabili e instabili Programma gnuplot Laboratorio di Calcolo Numerico Laboratorio 3: Algoritmi stabili e instabili Programma gnuplot Andrea Franceschini E-mail: franceschini@dmsa.unipd.it Dispense: http://www.math.unipd.it/ putti/teaching/calcolo

Dettagli

Annamaria Mazzia. Corso di Metodi Numerici per l Ingegneria dispense e altro materiale su

Annamaria Mazzia. Corso di Metodi Numerici per l Ingegneria dispense e altro materiale su Soluzione di un sistema non lineare con la Regula Falsi generalizzata per la determinazione degli angoli conico di taglio ed elicoidale di taglio di una cremagliera Annamaria Mazzia Dipartimento di Metodi

Dettagli

Esercizi. Fortran 90[/95] Algoritmo di Newton. Esercizi. Algoritmo di Newton: Progetto

Esercizi. Fortran 90[/95] Algoritmo di Newton. Esercizi. Algoritmo di Newton: Progetto Esercizi Fortran 90[/95] M. Bianco Quanto vale ires alla fine delle iterazioni? ires=0 DO index=-10,10 ires=ires+1 END DO Esercizi Quanto vale ires alla fine delle iterazioni? ires=0 loop1: DO index1=1,20,5

Dettagli

Elementi di Calcolo Scientifico per l Ingegneria A.A

Elementi di Calcolo Scientifico per l Ingegneria A.A Elementi di Calcolo Scientifico per l Ingegneria A.A. 2017-2018 Ottobre 2017 (2 16) Indice 1 2 3 4 Rappresentazione dei numeri reali nel calcolatore l insieme dei numeri reali, R, contiene un numero infinito

Dettagli

Equazioni e sistemi non lineari

Equazioni e sistemi non lineari Equazioni e sistemi non lineari Lucia Gastaldi DICATAM - Sezione di Matematica, http://lucia-gastaldi.unibs.it Indice 1 Ricerca degli zeri di una funzione Problema e definizioni Metodo di Newton-Raphson

Dettagli

Laboratorio di Calcolo Numerico Laboratorio 4: Functions e metodo di Picard

Laboratorio di Calcolo Numerico Laboratorio 4: Functions e metodo di Picard Laboratorio di Calcolo Numerico Laboratorio 4: Functions e metodo di Picard Andrea Franceschini E-mail: franceschini@dmsa.unipd.it Dispense: http://www.math.unipd.it/ putti/teaching/calcolo ambientale/index.html

Dettagli

Programmare con MATLAB c Parte 5 Cicli: for e while

Programmare con MATLAB c Parte 5 Cicli: for e while Programmare con MATLAB c Parte 5 Cicli: for e while Lucia Gastaldi DICATAM - Sezione di Matematica, http://lucia-gastaldi.unibs.it Indice 1 La notazione due punti 2 Ciclo: for 3 Ciclo con controllo: while

Dettagli

Laboratorio di Calcolo Numerico

Laboratorio di Calcolo Numerico Laboratorio di Calcolo Numerico Lezione 4 Padova, April 12nd 2016 F. Piazzon Department of Mathematics. Doctoral School in Mathematical Sciences, Applied Mathematics Area Outline Lab. 4-2 of 9 1 Matlab:

Dettagli

Equazioni e sistemi non lineari

Equazioni e sistemi non lineari Equazioni e sistemi non lineari Lucia Gastaldi Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ 4 novembre 2007 Outline 1 Ricerca degli zeri di una funzione Problema e definizioni Metodo di

Dettagli

Corso di Laurea Specialistica in Ingegneria Meccanica e Ingegneria Energetica Progetto numerico al calcolatore

Corso di Laurea Specialistica in Ingegneria Meccanica e Ingegneria Energetica Progetto numerico al calcolatore Corso di Laurea Specialistica in Ingegneria Meccanica e Ingegneria Energetica Progetto numerico al calcolatore Soluzione di un sistema non lineare con la Regula Falsi generalizzata per la determinazione

Dettagli

CAPITOLO 1 Esercizi risolti di programmazione Fortran

CAPITOLO 1 Esercizi risolti di programmazione Fortran CAPITOLO 1 Esercizi risolti di programmazione Fortran In questa appice si propongono testi e risoluzioni di alcuni temi d esame di programmazione apparsi negli ultimi 6 anni nelle prove scritte per Ingegneria

Dettagli

MATLAB:Metodi Numerici per zeri di funzioni.

MATLAB:Metodi Numerici per zeri di funzioni. 1 Francesca Mazzia Dipartimento Interuniversitario di Matematica Università di Bari MATLAB:Metodi Numerici per zeri di funzioni Metodo delle successive bisezioni Sappiamo che la procedura definita dal

Dettagli

Fortran in pillole : prima parte

Fortran in pillole : prima parte Fortran in pillole : prima parte Annamaria Mazzia Dipartimento di Metodi e Modelli Matematici per le Scienze Applicate Corso di Metodi Numerici per l Ingegneria Introduzione al Fortran Un libro consigliato

Dettagli

Fortran. Funzioni e Subroutine.

Fortran. Funzioni e Subroutine. Fortran Funzioni e Subroutine http://www.dia.uniroma3.it/~roselli/ roselli@dia.uniroma3.it Credits Materiale a cura del Prof. Franco Milicchio Introduzione Dal Fortran II del 1958, Fortran consente di

Dettagli

Laboratorio di Calcolo Numerico Laboratorio 11: Metodi iterativi per la soluzione di sistemi lineari. 20 Maggio 2019

Laboratorio di Calcolo Numerico Laboratorio 11: Metodi iterativi per la soluzione di sistemi lineari. 20 Maggio 2019 Laboratorio di Calcolo Numerico Laboratorio 11: Metodi iterativi per la soluzione di sistemi lineari 20 Maggio 2019 Risolvere sistemi di equazioni lineari Metodi Iterativi Data una matrice quadrata A di

Dettagli

Equazioni e sistemi non lineari

Equazioni e sistemi non lineari Equazioni e sistemi non lineari Lucia Gastaldi DICATAM - Sezione di Matematica, http://lucia-gastaldi.unibs.it Indice 1 Ricerca degli zeri di una funzione Problema e definizioni Metodo di Newton-Raphson

Dettagli

Corso di Calcolo Numerico

Corso di Calcolo Numerico Corso di Calcolo Numerico Dott.ssa M.C. De Bonis Università degli Studi della Basilicata, Potenza Facoltà di Ingegneria Corso di Laurea in Ingegneria Meccanica Risoluzione di Equazioni non lineari Sia

Dettagli

Corso di Matematica per la Chimica. Dott.ssa Maria Carmela De Bonis a.a

Corso di Matematica per la Chimica. Dott.ssa Maria Carmela De Bonis a.a Dott.ssa Maria Carmela De Bonis a.a. 2013-14 Risoluzione di Equazioni non lineari Sia F C 0 ([a, b]), cioé F è una funzione continua in un intervallo [a, b] R, tale che F(a)F(b) < 0 1.5 1 F(b) 0.5 0 a

Dettagli

Vettori e Matrici (array)

Vettori e Matrici (array) Vettori e Matrici (array) Introduction to Fortran 90 Massimiliano Guarrasi, CINECA m.guarrasi@cineca.it Ottobre 2014 Array - Introduzione Gli array sono serie di variabili dello stesso tipo, ciascuna accessibile

Dettagli

Laboratorio di Calcolo Numerico Laboratorio 5: Scrittura su FILE. Soluzione di Equazioni non lineari

Laboratorio di Calcolo Numerico Laboratorio 5: Scrittura su FILE. Soluzione di Equazioni non lineari Laboratorio di Calcolo Numerico Laboratorio 5: Scrittura su FILE. Soluzione di Equazioni non lineari Claudia Zoccarato E-mail: claudia.zoccarato@unipd.it Dispense: Moodle Dipartimento ICEA 05 Aprile 2017

Dettagli

Array in Fortran 90. Ing. Luca De Santis. Anno accademico 2006/2007. DIS - Dipartimento di informatica e sistemistica

Array in Fortran 90. Ing. Luca De Santis. Anno accademico 2006/2007. DIS - Dipartimento di informatica e sistemistica Array in Fortran 90 Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2006/2007 Fortran 90: array DIS - Dipartimento di informatica e sistemistica 1 / 25 Cosa vedremo

Dettagli

Complementi di Matematica A.A Laboratorio 10

Complementi di Matematica A.A Laboratorio 10 Complementi di Matematica A.A. 2016-2017 Laboratorio 10 Equazioni non lineari (fzero) Sia f : R R una funzione che ammette una radice α, ovvero t.c. f(α) = 0. Possiamo utilizzare la funzione predefinita

Dettagli

Programma del corso di: Laboratorio di Programmazione e Calcolo Corso di laurea in Matematica a.a Proff. B. Paternoster, D.

Programma del corso di: Laboratorio di Programmazione e Calcolo Corso di laurea in Matematica a.a Proff. B. Paternoster, D. Programma del corso di: Laboratorio di Programmazione e Calcolo Corso di laurea in Matematica a.a.009-0 Proff. B. Paternoster, D. Conte Risoluzione di un problema con il calcolatore: dal problema reale

Dettagli

Esame di Calcolo Numerico per Informatica A.A. 2010/11: testo soluzioni Proff. S. De Marchi e M. R. Russo 12 luglio 2011

Esame di Calcolo Numerico per Informatica A.A. 2010/11: testo soluzioni Proff. S. De Marchi e M. R. Russo 12 luglio 2011 Esame di Calcolo Numerico per Informatica A.A. 200/: testo soluzioni Proff. S. De Marchi e M. R. Russo 2 luglio 20 L esame consiste di 4 domande aperte e 0 esercizi a risposta multipla. Per gli esercizi

Dettagli

Vettori e Matrici (array)

Vettori e Matrici (array) Vettori e Matrici (array) Introduction to Fortran 90 Elda Rossi, CINECA Marzo 2015 Array - Introduzione Gli array sono serie di variabili dello stesso tipo, ciascuna accessibile mediante indici numerici.

Dettagli

Metodi iterativi SISTEMI LINEARI. Metodi Iterativi. Metodo di rilassamento successivo e metodi del gradiente

Metodi iterativi SISTEMI LINEARI. Metodi Iterativi. Metodo di rilassamento successivo e metodi del gradiente Metodi iterativi Metodo di rilassamento successivo e metodi del gradiente Metodi iterativi Metodi iterativi 1 Il metodo di rilassamento successivo Condizioni per la convergenza 2 Metodi del Metodo della

Dettagli

Laboratorio di Calcolo Numerico

Laboratorio di Calcolo Numerico Laboratorio di Calcolo Numerico Lezione 3 Padova, April 4th 2016 F. Piazzon Department of Mathematics. Doctoral School in Mathematical Sciences, Applied Mathematics Area Outline Lab. 3-2 of 16 1 Costrutti

Dettagli

Appendice di esercizi in FORTRAN

Appendice di esercizi in FORTRAN Annamaria Mazzia Appendice di esercizi in FORTRAN Dipartimento di Ingegneria Civile Edile e Ambientale Università degli Studi di Padova Creative Commons Attribuzione-Non commerciale-non opere derivate

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Strutture di Dati Parte 4 Conclusioni G. Mecca M. Samela Università della Basilicata Strutture di Dati: Conclusioni >> Sommario Sommario Ricapitolazione Alcune

Dettagli

1. Calcolo dell indice di condizionamento di una matrice

1. Calcolo dell indice di condizionamento di una matrice 1 Esercizi sul condizionamento con matlab laboratorio di Calcolo Scientifico per Geofisici Prof. A. Murli a.a. 2006/07 1. Calcolo dell indice di condizionamento di una matrice Determinare una function

Dettagli

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 3-24/3/2014

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 3-24/3/2014 Complementi di Matematica e Calcolo Numerico A.A. 2012-2013 Laboratorio 3-24/3/2014 Equazioni non lineari (fzero) Sia f : R R una funzione che ammette una radice α, ovvero t.c. f(α) = 0. Possiamo utilizzare

Dettagli

Problema: stampa degli interi compresi tra n e m

Problema: stampa degli interi compresi tra n e m Costrutti imperativi Problema: stampa degli interi compresi tra n e m http://caml.inria.fr/pub/docs/manual-ocaml/libref/pervasives.html Output functions on standard output val print_string: string -> unit

Dettagli

Introduzione al MATLAB c Parte 2

Introduzione al MATLAB c Parte 2 Introduzione al MATLAB c Parte 2 Lucia Gastaldi Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ 24 settembre 2007 Outline 1 M-file di tipo Script e Function Script Function 2 Elementi di programmazione

Dettagli

Esercitazione 4. F (x) = x + log x. Prima parte. La definizione che segue è una realizzazione del metodo ad un punto definito dalla funzione h.

Esercitazione 4. F (x) = x + log x. Prima parte. La definizione che segue è una realizzazione del metodo ad un punto definito dalla funzione h. Esercitazione 4 Istruzioni trattate: grid, legend, plotd, and. Nella prima parte di questa esercitazione vedremo una realizzazione di un metodo ad un punto e la utilizzeremo per approssimare il punto unito

Dettagli

Istruzioni condizionali di diramazione in Fortran 90

Istruzioni condizionali di diramazione in Fortran 90 Istruzioni condizionali di diramazione in Fortran 90 Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2006/2007 Fortran 90: Istruzioni di diramazione DIS - Dipartimento

Dettagli

Metodi di Ottimizzazione

Metodi di Ottimizzazione Metodi di Ottimizzazione Stefano Gualandi Università di Pavia, Dipartimento di Matematica email: twitter: blog: stefano.gualandi@unipv.it @famospaghi, @famoconti http://stegua.github.com Metodi di Ottimizzazione

Dettagli

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 4-23/3/2015

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 4-23/3/2015 Complementi di Matematica e Calcolo Numerico A.A. 2014-2015 Laboratorio 4-23/3/2015 Equazioni non lineari (fzero) Sia f : R R una funzione che ammette una radice α, ovvero t.c. f(α) = 0. Possiamo utilizzare

Dettagli

Laboratorio di Calcolo Numerico Laboratorio 3: Algoritmi stabili e instabili, Bisezione

Laboratorio di Calcolo Numerico Laboratorio 3: Algoritmi stabili e instabili, Bisezione Laboratorio di Calcolo Numerico Laboratorio 3: Algoritmi stabili e instabili, Bisezione Claudia Zoccarato E-mail: claudia.zoccarato@unipd.it Dispense: Moodle Dipartimento ICEA 22 Marzo 2017 Vettori in

Dettagli

Esame di Calcolo Numerico per Informatica A.A. 2010/11 Proff. S. De Marchi e M. R. Russo 31 agosto 2011 Testo e soluzioni

Esame di Calcolo Numerico per Informatica A.A. 2010/11 Proff. S. De Marchi e M. R. Russo 31 agosto 2011 Testo e soluzioni Esame di Calcolo Numerico per Informatica A.A. 21/11 Proff. S. De Marchi e M. R. Russo 31 agosto 211 Testo e soluzioni L esame consiste di 4 domande aperte e 1 esercizi a risposta multipla. Per gli esercizi

Dettagli

Calcolare il massimo di una lista

Calcolare il massimo di una lista Calcolare il massimo di una lista Lunedì abbiamo definito un algoritmo per calcolare il valore massimo fra gli elementi di una lista predefinita di interi. In particolare, abbiamo: deciso di rappresentare

Dettagli

Metodi Numerici Prova di Laboratorio Esami del Stefano Gualandi

Metodi Numerici Prova di Laboratorio Esami del Stefano Gualandi Metodi Numerici Prova di Laboratorio Esami del 2018 Stefano Gualandi October 11, 2018 ii Premessa Questo documento presenta la raccolta dei testi di esame degli appelli del corso di Metodi Numerici, Prova

Dettagli

Breve Manuale di Riferimento sulla Sintassi Linguaggi C++ e FORTRAN

Breve Manuale di Riferimento sulla Sintassi Linguaggi C++ e FORTRAN Breve Manuale di Riferimento sulla Sintassi Linguaggi e versione aggiornata al 05/02/2004 Sommario Elementi di Base... 2 Dati, Tipi e Dichiarazioni... 2 Tipi di Dato di Base... 2 Tipi di Dato Strutturati...

Dettagli

Capitolo 1. Esercizi a.a Esercizi. Esercizio 1.1 Dimostrare che il metodo iterativo

Capitolo 1. Esercizi a.a Esercizi. Esercizio 1.1 Dimostrare che il metodo iterativo Capitolo Esercizi a.a. 206-7 Esercizi Esercizio. Dimostrare che il metodo iterativo x k+ = Φ(x k ), k = 0,,..., se convergente a x, deve verificare la condizione di consistenza x = Φ(x ). Ovvero, la soluzione

Dettagli

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 9 - Equazioni non lineari

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 9 - Equazioni non lineari Complementi di Matematica e Calcolo Numerico A.A. 2017-2018 Laboratorio 9 - Equazioni non lineari Data f : R R determinare α R tale che f(α) = 0 Le soluzioni di questo problema vengono dette radici o zeri

Dettagli

f(x) = x e x, prendere come intervallo iniziale [0, 1] e fissare come precisione ε = 10 8.

f(x) = x e x, prendere come intervallo iniziale [0, 1] e fissare come precisione ε = 10 8. Esercitazione 7 Argomento: Il metodo delle successive bisezioni Scopo: Implementare il metodo delle successive bisezioni per la soluzione di equazioni non lineari. function [alfa,iter]=bisez(f,a,b,epsilon)

Dettagli

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 7

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 7 Complementi di Matematica e Calcolo Numerico A.A. 2015-2016 Laboratorio 7 Equazioni non lineari (fzero) Sia f : R R una funzione che ammette una radice α, ovvero t.c. f(α) = 0. Possiamo utilizzare la funzione

Dettagli

Implementazione in linguaggio C del metodo delle potenze

Implementazione in linguaggio C del metodo delle potenze Università degli Studi di Cagliari FACOLTÀ DI INGEGNERIA E ARCHITETTURA Corso di Laurea in Ingegneria Elettrica ed Elettronica Tesina seminario matematica applicata avanzata Implementazione in linguaggio

Dettagli

Fondamenti di Informatica

Fondamenti di Informatica Vettori e matrici #1 Le variabili definite come coppie sono dette variabili scalari Fondamenti di Informatica 5. Algoritmi e pseudocodifica Una coppia è una variabile

Dettagli

Esercitazione 4. Prima parte. La definizione che segue è una realizzazione del metodo ad un punto definito dalla funzione h. 1

Esercitazione 4. Prima parte. La definizione che segue è una realizzazione del metodo ad un punto definito dalla funzione h. 1 Esercitazione 4 Istruzioni trattate: l operatore $, grid, legend, plot2d, l operatore :. In questa esercitazione si considera il problema di approssimare lo zero, α, della funzione f definita per > da:

Dettagli

Integrazione numerica

Integrazione numerica Integrazione numerica Lucia Gastaldi DICATAM - Sez. di Matematica, http://lucia-gastaldi.unibs.it Indice 1 Formule di quadratura semplici e composite Formule di quadratura Grado di precisione Formule di

Dettagli

Esercizio 1. Esercizio 2

Esercizio 1. Esercizio 2 Sia data la matrice A A(α) = Esercizio α 2 2α 2 2, α R.) determinare per quali valori del parametro reale α é verificata la condizione necessaria e sufficiente di convergenza per il metodo di Jacobi;.2)

Dettagli

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

Derivazione numerica. Introduzione al calcolo numerico. Derivazione numerica (II) Derivazione numerica (III) Derivazione numerica Introduzione al calcolo numerico Il calcolo della derivata di una funzione in un punto implica un processo al limite che può solo essere approssimato da un calcolatore. Supponiamo

Dettagli

Breve guida al linguaggio FORTRAN 77

Breve guida al linguaggio FORTRAN 77 Breve guida al linguaggio FORTRAN 77 Variabili (valori di default) Iniziali con lettere da I a N Iniziali con lettere da A a H oppure da O a Z variabili intere, 4 byte in precisione singola variabili reali,

Dettagli

Implementazione in Fortran del Metodo Runge-Kutta di IV ordine per l Equazione di van der Pol

Implementazione in Fortran del Metodo Runge-Kutta di IV ordine per l Equazione di van der Pol Implementazione in Fortran del Metodo Runge-Kutta di IV ordine per l Equazione di van der Pol Marco Frego 16 marzo 2007 1 Introduzione e commenti sul metodo Utilizzare il metodo Runge-Kutta di IV ordine

Dettagli

Corso di Fondamenti di Informatica Università degli Studi di Cassino

Corso di Fondamenti di Informatica Università degli Studi di Cassino Un linguaggio ad alto livello deve offrire degli strumenti per: rappresentare le informazioni di interesse dell algoritmo definire le istruzioni che costituiscono l algoritmo Cominciamo ad analizzare la

Dettagli

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 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

Dettagli

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 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

Dettagli

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 Lucia Gastaldi DICATAM - Sezione di Matematica, http://www.ing.unibs.it/gastaldi/ Indice 1 M-file di tipo Script e Function Script Function 2 Gestione

Dettagli

Quale delle seguenti rappresentazioni del numero reale è in virgola mobile normalizzata?

Quale delle seguenti rappresentazioni del numero reale è in virgola mobile normalizzata? Quale delle seguenti istruzioni MATLAB esegue il calcolo del raggio spettrale di una matrice quadrata A? a. max(eig(abs(a))) b. max(abs(eig(a))) c. abs(max(eig(a))) d. max(abs(eig(a *A))) Il raggio spettrale

Dettagli

Informatica (A-K) 5. Algoritmi e pseudocodifica

Informatica (A-K) 5. Algoritmi e pseudocodifica Vettori e matrici #1 Informatica (A-K) 5. Algoritmi e pseudocodifica Corso di Laurea in Ingegneria Civile & Ambientale A.A. 2011-2012 2 Semestre Prof. Giovanni Pascoschi Le variabili definite come coppie

Dettagli

PASCAL. 05/04/2012 Pascal 1

PASCAL. 05/04/2012 Pascal 1 PASCAL 05/04/2012 Pascal 1 Per iniziare Compariranno vari menu, ma quelli principali sono tre File in cui troviamo: New per creare un nuovo documento di lavoro, Load per aprire lavori già salvati, Save

Dettagli

Metodi numerici con elementi di Programmazione A.A

Metodi numerici con elementi di Programmazione A.A Metodi numerici con elementi di Programmazione A.A. 2013-2014 Introduzione al MatLab VI parte 1 Docente: Vittoria Bruni Email: vittoria.bruni@sbai.uniroma1.it Ufficio: Via A. Scarpa, Pal. B, I piano, Stanza

Dettagli

Fondamenti di Informatica 6. Algoritmi e pseudocodifica

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

Dettagli

Equazioni non lineari. Gabriella Puppo

Equazioni non lineari. Gabriella Puppo Equazioni non lineari Gabriella Puppo Equazioni non lineari Passare una function come argomento Metodo di bisezione Metodo di Newton Metodo delle secanti Funzione fzero Passare una function come argomento

Dettagli

Costrutti condizionali e iterativi

Costrutti condizionali e iterativi Costrutti condizionali e iterativi Introduction to modern Fortran Paolo Ramieri, CINECA Maggio 2017 Strutture di controllo Le strutture di controllo permettono di alterare la sequenza di esecuzione delle

Dettagli

Laboratorio di Calcolo Numerico

Laboratorio di Calcolo Numerico Laboratorio di Calcolo Numerico M.R. Russo Università degli Studi di Padova Dipartimento di Matematica Pura ed Applicata A.A. 2009/2010 Equazioni non lineari Data una funzione consideriamo il problema

Dettagli

Elementi di Base. Introduzione a Python.

Elementi di Base. Introduzione a Python. Elementi di Base Introduzione a Python http://www.dia.uniroma3.it/~roselli/ roselli@dia.uniroma3.it Credits Materiale a cura del Prof. Franco Milicchio Panoramica Elementi di base della sintassi (struttura,

Dettagli

Rappresentazione di interi

Rappresentazione di interi Rappresentazione dei numeri Rappresentazione di interi Supponiamo 2 byte (16 bit) 2 16 = 65536 [-32767, 32768] con m bit 2 m -1 numeri Se prendiamo come segno il primo bit abbiamo ad esempio (01111111)

Dettagli

Programmazione con il linguaggio LibreOffice Basic

Programmazione con il linguaggio LibreOffice Basic Programmazione con il linguaggio LibreOffice Basic L ambiente di programmazione Il software LibreOffice possiede un ambiente di programmazione in linguaggio Basic, che consente di creare procedure software

Dettagli

Sviluppare un programma in FORTRAN

Sviluppare un programma in FORTRAN Sviluppare un programma in FORTRAN Scrivere il file sorgente Editor di testo (emacs, vi, notepad, etc) Compilare Compilatore (ifort, gfortran, etc) Eseguire il programma Riga di comando, doppio click,

Dettagli

Esercitazione 4. Prima parte. v($ + 1) = g(v($))

Esercitazione 4. Prima parte. v($ + 1) = g(v($)) Esercitazione 4 Istruzioni trattate: l operatore $, grid, legend, plot2d. In questa esercitazione si considera il problema di approssimare lo zero, α, della funzione f definita per > da: f() = + log Nella

Dettagli

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 3

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 3 Complementi di Matematica e Calcolo Numerico A.A. 2012-2013 Laboratorio 3 Funzioni Simboliche (inline) Assegnata una funzione del tipo f(x) = (sin(x) + x) 2 vogliamo valutare i valori assunti da f per

Dettagli

Programmazione di base

Programmazione di base Fondamenti di Informatica Testo A Secondo Appello 016-17 febbraio 017 Rispondi alle domande negli appositi spazi. I punti assegnati per ogni domanda sono indicati nel riquadro a lato. L'esame contiene

Dettagli

Fortran per Ingegneri

Fortran per Ingegneri Fortran per Ingegneri Lezione 4 A.A. 2014/2015 Marco Redolfi marco.redolfi@unitn.it Simone Zen simone.zen@unitn.it Formati e Formattazione Finora abbiamo letto valori da tastiera e scritto sullo schermo

Dettagli

e L equazione associata a questa disequazione non è risolvibile in maniera analitica, con metodi numerici 2 si trova n 1754, 21

e L equazione associata a questa disequazione non è risolvibile in maniera analitica, con metodi numerici 2 si trova n 1754, 21 Il file distribuzioni.f90 è strutturato in tre parti. Il primo modulo è necessario per richiedere la precisione desiderata per i real di lavoro module precisione integer,parameter::kr=selected_real_kind(18)

Dettagli

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 6 Metodi iterativi per sistemi lineari

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 6 Metodi iterativi per sistemi lineari Complementi di Matematica e Calcolo Numerico A.A. 2017-2018 Laboratorio 6 Metodi iterativi per sistemi lineari Dati una matrice A R N N non singolare e un vettore b R N, un metodo iterativo per la risoluzione

Dettagli

Matlab: Script e Funzioni

Matlab: Script e Funzioni Matlab: Script e Funzioni Informatica B Script Cos è uno script (m-file) q Uno script è un file di testo contenente una sequenza di comandi MATLAB non deve contenere caratteri di formattazione (solo testo

Dettagli

Fortran per Ingegneri

Fortran per Ingegneri Fortran per Ingegneri Lezione 6 A.A. 2013/2014 Ing. Davide Vanzo davide.vanzo@unitn.it Ing. Simone Zen simone.zen@unitn.it ufficio: Laboratorio didattico di modellistica ambientale (2 piano) Tel interno:

Dettagli

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

Algoritmi, Strutture Dati e Programmi. UD 2.b: Programmazione in Pascal Algoritmi, Strutture Dati e Programmi : Programmazione in Pascal Prof. Alberto Postiglione AA 2007-2008 Università degli Studi di Salerno Il Linguaggio di Programmazione Pascal Esistono molti linguaggi

Dettagli

Costrutti condizionali e iterativi

Costrutti condizionali e iterativi Costrutti condizionali e iterativi Introduction to Fortran 90 Paolo Ramieri, CINECA Aprile 2014 Strutture di controllo Le strutture di controllo permettono di alterare la sequenza di esecuzione delle istruzioni

Dettagli

Esame di Calcolo Numerico per Informatica A.A. 2010/11 Proff. S. De Marchi e M. R. Russo 19 settembre 2011

Esame di Calcolo Numerico per Informatica A.A. 2010/11 Proff. S. De Marchi e M. R. Russo 19 settembre 2011 Esame di Calcolo Numerico per Informatica A.A. 2010/11 Proff. S. De Marchi e M. R. Russo 19 settembre 2011 L esame consiste di 4 domande aperte e 10 esercizi a risposta multipla. Per gli esercizi ci sono

Dettagli

Scopo del progetto è la costruzione di un compilatore per il linguaggio descritto qui di seguito.

Scopo del progetto è la costruzione di un compilatore per il linguaggio descritto qui di seguito. Corso di Linguaggi e Traduttori Anno Accademico 2017 2018 Prof. Giovanni Pighizzini Progetto d esame Scopo del progetto è la costruzione di un compilatore per il linguaggio descritto qui di seguito. Variabili

Dettagli

Fortran. Introduzione.

Fortran. Introduzione. Fortran Introduzione http://www.dia.uniroma3.it/~roselli/ roselli@dia.uniroma3.it Credits Materiale a cura del Prof. Franco Milicchio Introduzione Esistono molti linguaggi di programmazione usati in vari

Dettagli