Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Slides:



Advertisements
Presentazioni simili
Metodo di Calcolo Numerico per Equazioni differenziali Ordinarie
Advertisements

Equazioni e calcoli chimici
Metodi e Applicazioni numeriche nell’Ingegneria Chimica
Metodi e Applicazioni numeriche nell’Ingegneria Chimica
Ricorrenze Il metodo di sostituzione Il metodo iterativo
Metodi e Applicazioni numeriche nell’Ingegneria Chimica
Meccanica 6 21 marzo 2011 Cambiamento di sistema di riferimento
I numeri naturali ….. Definizione e caratteristiche
Sottoprogrammi: funzioni e procedure
Sistema di riferimento sulla retta
Procedure e funzioni A. Ferrari.
Informatica Generale Alessandra Di Pierro
METODI EQUAZIONI DIFFERENZIALI Funzioni che mettono in relazione una variabile indipendente ( es. x), una sua funzione ( es. y = f(x) ) e la.
COORDINATE POLARI Sia P ha coordinate cartesiane
LE MATRICI.
Meccanica 8 31 marzo 2011 Teorema del momento angolare. 2° eq. Cardinale Conservazione del momento angolare Sistema del centro di massa. Teoremi di Koenig.
Meccanica aprile 2011 Oscillatore armonico, energia meccanica
Sintesi dei dati La sintesi dei dati comporta una perdita di informazioni, deve quindi essere privilegiato l’indice di sintesi che minimizza la perdita.
= 2x – 3 x Definizione e caratteristiche
esponente del radicando
Definizione e caratteristiche
ANALISI DELLA COVARIANZA
1 Istruzioni, algoritmi, linguaggi. 2 Algoritmo per il calcolo delle radici reali di unequazione di 2 o grado Data lequazione ax 2 +bx+c=0, quali sono.
Lezione 3) Cenni di teoria dell’elasticità, sforzi e deformazioni, l’equazione delle onde elastiche.
Algebra lineare.
1 HTML - I Frame Laboratorio di Applicazioni Informatiche II mod. A.
Funzioni definite dall’utente
Process synchronization
Metodi iterativi semplici G. Puppo. Riassunto Problema del fill-in Memorizzazione di matrici sparse Metodo di Jacobi.
Polinomi, integrazione e ottimizzazione
Seminario su clustering dei dati – Parte II
CONTROLLO DI SUPPLY CHAIN MEDIANTE TECNICHE H-INFINITO E NEGOZIAZIONE
Algoritmi e Strutture Dati
Metodi e Applicazioni numeriche nell’Ingegneria Chimica
OPERAZIONI CON TRINOMI DI II° GRADO
Unità Didattica 2 I Linguaggi di Programmazione
I numeri relativi by iprof.
Un gioco di magia!?.
File di testo, file binari
Le funzioni.
Elaborato di Teoria dello Sviluppo dei Processi Chimici
Il calcolo di radiosity
Equazioni differenziali Applicazioni Economiche
EQUAZIONI DI SECONDO GRADO
Algoritmi di String Matching
Anche la RB-Delete ha due fasi: Nella prima viene tolto un nodo y avente uno dei sottoalberi vuoto sostituendolo con la radice dellaltro sottoalbero. Per.
Elementi di Informatica di base
Scheda Ente Ente Privato Ente Pubblico. 2ROL - Richieste On Line.
RISOLVERE LE EQUAZIONI
1 Questionario di soddisfazione ATA - a. sc. 2008/09 Il questionario è stato somministrato nel mese di aprile Sono stati restituiti 29 questionari.
1 MOTI PIANI Cosenza Ottavio Serra. 2 La velocità è tangente alla traiettoria v (P P, st, (P–P)/(t-t)v.
Un esempio: Calcolo della potenza n-esima di un numero reale
Laureando: Enrico Masini
1101 = x 10 x 10 x x 10 x = CORRISPONDENZE
3 aprile 2002 Avvisi: 1 o Esonero: mercoledi 17 aprile ore 11:30 – 14:00 consulta la pag. WEB alla voce esoneri si raccomanda la puntualita!
Unità 2 Distribuzioni di probabilità Misure di localizzazione Misure di variabilità Asimmetria e curtosi.
EQUAZIONI DI PRIMO GRADO
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Algoritmi e basi del C Marco D. Santambrogio – Ver. aggiornata al 13 Marzo 2014.
Bando Pittori e Scultori in Piemonte alla metà del ‘700
Metodi matematici per economia e finanza. Prof. F. Gozzi
1 Il Buffer Cache Unix (Bach: the Design of the Unix Operating System (cap: 3)
lun mar mer gio ven SAB DOM FEBBRAIO.
La quantità chimica LA MOLE La quantità chimica:la mole.
OPERAZIONI CON TRINOMI DI II° GRADO
I mercati dei beni e i mercati finanziari: il modello IS-LM
Ancora sulle equazioni di secondo grado….. Equazione di secondo grado completa Relazione tra le soluzioni di un'equazione di secondo grado.
Laboratorio di Calcolo Problemi tipici di Ingegneria Chimica Docente: Massimo Urciuolo
Transcript della presentazione:

Metodi e Applicazioni numeriche nell’Ingegneria Chimica Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Soluzione di sistemi non lineari (continua) Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Soluzione di sistemi non lineari Quattro categorie di metodi 1. Metodi di sostituzione 2. Metodo del gradiente 3. Metodi di Newton e suoi derivati 4. Metodi di continuazione Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Metodi di sostituzione I metodi di sostituzione sono concettualmente molto semplici. Per poterli utilizzare è necessario trasformare le equazioni che costituiscono il sistema da risolvere: in modo che i termini di sinistra costituiscano un sistema facile da risolvere rispetto alle variabili x. Conoscendo un valore di tentativo, xi, lo si pone a destra delle equazioni in modo da ricavare un valore di xi+1 ottenuto utilizzando il sistema costituito dalle equazioni di sinistra. Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Metodi e Applicazioni numeriche nell’Ingegneria Chimica Esempio Trovare il valore di x, xs, che azzeri le due equazioni: partendo dal punto di primo tentativo x1 = 0, x2 = 1 Sommando alla prima equazione x1 e alla seconda x2 si ottiene: Le iterazioni sono: x1= 0.000; -1.000; -3.086 104 x2= 1.000; -3.086; 1.10308 Il metodo diverge Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Esempio di Ingegneria Chimica Metodo BP (Boiling Point) per risolvere le equazioni di simulazione di una colonna di distillazione. Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Metodi e Applicazioni numeriche nell’Ingegneria Chimica Dato un valore di tentativo di Tj, Lj, Vj e yij Si itera il processo Vengono usate le equazioni di Bilancio Materiale per il componente i Lj-1xij-1 – (Vjkij + Lj)xij + Vj+1kij+1xij+1 = Fjzi per ricavare le variabili xij Vengono usate le equazioni stechiometriche per ricavare un valore aggiornato di Tj Vengono usate le equazioni di Bilancio Materiale: Lj-1 - Vj - Lj + Vj+1 = Fj e le equazioni di Bilancio Energetijco: Lj-1 hj-1 - Vj Hj - Lj hj + Vj+1 Hj+1 + Qj-1 = Fj HFj per ricavare un valore aggiornato di Lj e Vj Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Metodi e Applicazioni numeriche nell’Ingegneria Chimica Osservazioni Le equazioni: Lj-1xij-1 – (Vjkij + Lj)xij + Vj+1kij+1xij+1 = Fjzi risolte per un componente, i, alla volta costituiscono dei sistemi lineari con struttura tridiagonale. Le equazioni: sono analoghe a quelle già viste per il calcolo del punto di bolla di una miscela. Il metodo prende il nome BP da questo fatto. Le equazioni: Lj-1 - Vj - Lj + Vj+1 = Fj Lj-1 hj-1 - Vj Hj - Lj hj + Vj+1 Hj+1 + Qj-1 = Fj HFj risolte rispetto alle variabili Lj e Vj costituiscono un sistema lineare con struttura a blocchi (di dimensioni 2) tridiagonali. Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Metodi e Applicazioni numeriche nell’Ingegneria Chimica Il metodo BP se converge, converge lentamente alla soluzione. Il metodo BP ha problemi di convergenza quando la miscela contiene elementi molto volatili (per es. Idrogeno o Metano) o pochissimo volatili (per es. nel caso di assorbitori). Perché? Perché in entrambi i casi si sfrutterebbero equazioni mal condizionate rispetto alle variabili usate per risolverle. Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Vantaggi dei metodi di sostituzione Talvolta si può trovare un metodo che riesca a sfruttare algoritmi relativamente semplici. Svantaggi dei metodi di sostituzione Spesso il metodo non converge perché alcuni dei sottoproblemi in cui è stato suddiviso il problema originale sono mal condizionati. Anche se dovesse convergere il metodo richiede molte iterazioni. La ricerca di una formulazione che converga e che converga in modo accettabile può richiedere molto tempo uomo. Il programma ottenuto può portare ad una formulazione del problema molto diversa da quella del problema originale (si veda l’esempio del metodo BP). Il codice può perciò non essere di facile lettura. Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Metodi di sostituzione Obsoleti Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Metodi e Applicazioni numeriche nell’Ingegneria Chimica Promemoria Che cosa è lo Jacobiano di un sistema di equazioni? Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Metodi e Applicazioni numeriche nell’Ingegneria Chimica Lo Jacobiano di un sistema di equazioni f(x) è la matrice, J, delle derivate prime delle funzioni fj. Lo Jacobiano, J, di solito non è una matrice simmetrica. Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Metodi e Applicazioni numeriche nell’Ingegneria Chimica Metodo del gradiente Il gradiente della funzione di merito: è Perciò la direzione –gi è la direzione lungo la quale tale funzione di merito diminuisce più rapidamente possibile. Sappiamo che il metodo del gradiente non è un metodo molto valido per minimizzare una funzione. Perciò il metodo del gradiente verrà utilizzato solo quando tutti gli altri metodi vanno male nella speranza di sbloccare la situazione. Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Metodi e Applicazioni numeriche nell’Ingegneria Chimica Metodo di Newton Se le funzioni f possono essere espanse in serie di Taylor: f(xi +di) = f(xi) + J(xi) di + O(||di||2) e il punto xi è sufficientemente vicino alla soluzione è possibile arrestare lo sviluppo ai termini di primo grado. In questo caso il vettore delle correzioni di da apportare al punto xi si ottiene risolvendo il sistema lineare: f(xi +di) = fi + Ji di = 0 Il metodo di Newton, nella sua forma elementare, utilizza iterativamente la relazione: xi+1 = xi + di con di ricavato risolvendo il sistema lineare: Ji di = - fi Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Vantaggi del metodo di Newton Svantaggi del metodo di Newton Il metodo di Newton, quando converge, converge molto rapidamente (ha una velocità di convergenza quadratica). Se lo Jacobiano non è singolare la direzione di del metodo di Newton è tale da garantire la diminuzione di tutte le funzioni di merito. Svantaggi del metodo di Newton Il metodo va in crisi se lo Jacobiano è singolare o molto mal condizionato. Il metodo può non convergere. La previsione può essere peggiore di quella dell’iterazione precedente rispetto a tutte le funzioni di merito considerate. Ad ogni iterazione deve essere calcolato lo Jacobiano. Se come spesso avviene lo Jacobiano è calcolato numericamente ad ogni iterazione le funzioni f(x) devono essere calcolate N volte. Ad ogni iterazione deve essere risolto il sistema lineare: Ji di = - fi Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Metodi e Applicazioni numeriche nell’Ingegneria Chimica Sono state proposte numerose varianti del metodo di Newton. Esse possono essere raggruppate in due categorie a seconda di come viene calcolato lo Jacobiano. 1. Metodi di Newton modificato. Lo Jacobiano viene calcolato (numericamente o analiticamente) ad ogni iterazione. In questi metodi ad ogni iterazione deve essere risolto anche il sistema lineare Ji di = - fi . 2. Metodi Quasi Newton. Lo Jacobiano viene aggiornato ad ogni iterazione sommandogli una opportuna matrice. In questi metodi ad ogni iterazione può essere evitata (o no) la soluzione del sistema lineare Ji di = - fi . In entrambi i casi vengono apportate delle modifiche al metodo di Newton elementare che cercano di evitare i problemi di convergenza o di crisi. Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Metodi di continuazione Da non portare all’esame Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Metodi e Applicazioni numeriche nell’Ingegneria Chimica Breve parentesi sull’argomento Come imparare a imparare Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Metodi e Applicazioni numeriche nell’Ingegneria Chimica Molti anni fa quando ero un giovane pimpante durante un’escursione estiva in Dolomiti dovetti mettere nel sacco da montagna due grossi sassi che mio figlio riteneva bellissimi. Alla fine della gita sia io che mio figlio ci dimenticammo dei due sassi che perciò rimasero in fondo al sacco. Passarono i mesi, passarono molte gite di medie difficoltà e i sassi rimasero in fondo al sacco ricoperti da altra roba inutile. Essi furono scoperti e finalmente tolti dal sacco solo in giugno dell’anno dopo in occasione di una gita molto impegnativa che richiedeva tutta la capienza del sacco. Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Metodi e Applicazioni numeriche nell’Ingegneria Chimica Il teorema dello zio Giacomo Qualunque sia la difficoltà di una gita in montagna e qualunque sia la capienza del vostro sacco, esso sarà sempre pieno. Primo lemma Se state facendo una gita banale non usate il sacco che usereste per andare in cima all’Everest. In caso contrario vi ritrovereste con un sacco enorme pieno di cose inutili. Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Metodi e Applicazioni numeriche nell’Ingegneria Chimica Allo stesso modo quando si studia per preparare un esame non si deve esagerare con il materiale utilizzato. Morale La regola numero undici per imparare una materia che si deve portare ad un esame è di non perdersi dietro lo studio di cose inutili. Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Metodi e Applicazioni numeriche nell’Ingegneria Chimica Il teorema dello zio Giacomo nasconde un lemma più sottile e importante Secondo lemma Se avete un sacco di grandi dimensioni non limitatevi a fare gite banali. In caso contrario salireste per tutta la vita su cime senza valore mentre magari potreste salire in cima all’Everest. Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Metodi e Applicazioni numeriche nell’Ingegneria Chimica Questa metafora nel campo dello studio e più in generale per il tipo di vita che vi aspetta ha la seguente Morale La regola numero dodici per imparare una nuova materia e più in generale per imparare a costruirsi una vita piena e interessante è di non sottovalutare le proprie capacità. Wooka: Quest’ultima regola mi ricorda quel famoso libro “Istruzioni per un’aquila che si crede un pollo” Flinks: Personalmente aggiungerei un monito per quelli che invece sopravvalutano le loro capacità e consiglierei quell’autore a scrivere anche un libro intitolato “Istruzioni per tutti quei polli che si credono aquile” Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Metodi e Applicazioni numeriche nell’Ingegneria Chimica Chiusa la parentesi sull’argomento Come imparare a imparare Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Metodi e Applicazioni numeriche nell’Ingegneria Chimica Esercitazione Trovare il valore di x, xs, che azzeri le due equazioni: partendo dal punto di primo tentativo x1 = 0, x2 = 1 Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Metodi e Applicazioni numeriche nell’Ingegneria Chimica Il programma necessario è il seguente. Per prima cosa bisogna mettere gli include #include "BzzMathBasic.hpp“ #include "BzzMathAdvanced.hpp" // prototype void NonLinearSys(BzzVectorDouble &x, BzzVectorDouble &f); void main(void) { // bzzFileOut = stdout; BzzPrint("\nSoluzione di un sistema non lineare"); BzzVectorDouble x0(2,0.,1.); BzzNonLinearSystemDouble nls(x0,NonLinearSys); nls(); nls.BzzPrint("Results"); BzzPause(); } Poi bisogna mettere il prototipo della funzione bzzFileOut è una variabile globale che serve per dire dove la funzione BzzPrint scriverà Qui bzzFileOut è commentato e la funzione BzzPrint scriverà sul FILE di default BzzFile.txt NonLinearSys serve per calcolare i residui delle funzioni Ecco un esempio di uso della funzione BzzPrint Viene creato l’oggetto x0 che viene inizializzato con il valore di primo tentativo di x Viene creato l’oggetto nls nls chiama la funzione () che azzera la funzione nls chiama il suo costruttore che riceve il valore di primo tentativo di x e il nome della funzione in cui sono calcolati i residui nls chiama la BzzPrint che stampa i risultati La funzione BzzPause ferma il programma in attesa di ricevere un carattere Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Metodi e Applicazioni numeriche nell’Ingegneria Chimica NonLinearSys serve per calcolare i residui delle funzionie da azzerare void NonLinearSys(BzzVectorDouble &x, BzzVectorDouble &f) { f[1] = 10000. * x[1] * x[2] – 1.; f[2] = exp(-x[1]) + exp(-x[2]) – 1.0001; } Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica

Metodi e Applicazioni numeriche nell’Ingegneria Chimica Guido Buzzi-Ferraris Metodi e Applicazioni numeriche nell’Ingegneria Chimica