Paolo Braglia – Matricola 127745 – Lezione del 11/12/2000 – Ore 16.30-18.30 TRANSITORI TERMICI Consideriamo una lastra piana con uno spessore S dato e suddividiamola attuando quella che è definita Discretizzazione spaziale. Con il metodo delle differenze finite introduciamo il passo spaziale: S ND dove S è lo spessore e ND è il numero di divisioni. La lastra è così divisa in un numero finito di strisce l’una adiacente all’altra. Il punto mediano di ciascuna striscia è chiamato nodo ed in esso si può considerare la temperatura costante. Normalmente si assume che i nodi partano sulla superficie limite iniziale della lastra e che siano numerati da 0 a ND. Secondo questa notazione avremo dunque ND divisioni e ND+1 nodi. Ciascun nodo interno è così rappresentativo di una striscia di materiale con spessore . Al contrario invece il primo e ultimo nodo sono rappresentativi di una striscia di materiale di spessore . 0 1 2 3 4 X Figura 1- Esempio di discretizzazione spaziale con cinque nodi e quattro divisioni. L’ascissa x del nodo n-esimo equivale quindi a: n n con n 0.......ND dove n è un numero puro chiamato indice di nodo e rappresenta il puntatore dentro il vettore o la matrice che conterrà le temperature dei nodi. Per questo motivo indicheremo con T1 la temperatura al nodo 1, e con Tn la generica temperatura al nodo n-esimo. Si può notare che in questo modo la variabile X non è più continua ma assume solo valori discreti. E’ importante sapere che questa non è però l’unica rappresentazione spaziale possibile. C’è infatti chi parte ponendo il primo nodo appena dentro la pelle della lastra. In questo modo il numero dei nodi equivale a quello delle divisioni e in più anche i nodi esterni sono rappresentativi di una striscia di materiale di spessore . Quale rappresentazione usare è in ogni caso una scelta soggettiva e tale decisione ha portato, tra le varie cose, alla diversa interpretazione di vettori o matrici nei vari linguaggi di programmazione. 1 Paolo Braglia – Matricola 127745 – Lezione del 11/12/2000 – Ore 16.30-18.30 Infatti per questo motivo ci sono linguaggi in cui il primo posto dei vettori è identificato con il numero 1 mentre altri come il Basic o il Pascal in cui lo stesso è identificato con il numero 0. Per risolvere i problemi di transitorio bisogna introdurre anche una discretizzazione temporale che è effettuata con un passo temporale costante misurato in secondi. Tenendo conto delle cose già dette avremo: t dove è il tempo corrente e t è un numero puro chiamato indice di tempo. La soluzione del problema di transitorio si riduce ad essere una matrice bidimensionale discreta in entrambe le direzioni che contiene le temperature dei nodi ai vari istanti esaminati. t n 0 1 2 3 4 5 6 0 1 2 3 4 Figura 2 - Matrice rappresentativa di un problema suddiviso in 5 nodi ed esaminato per 7 unità temporali. Indicheremo quindi con Tnt la generica temperatura al nodo n all’istante t the occuperà la cella (n,t) nella matrice sopra descritta (Nei linguaggi di programmazione si utilizza in genere la seguente rappresentazione: T(n,t) ,se si usa un linguaggio come il Basic o il Fortran, T[n,t] se invece si usa il Pascal o il C). Il nostro obbiettivo è riuscire a calcolare i contenuti delle celle della matrice. Come vedremo ciò è possibile attraverso una formula ricorsiva utilizzando la tecnica di time marching. In generale le temperature dei nodi allo stadio iniziale (corrispondente a t = 0) possono essere note a priori. Partendo da queste, sotto opportune condizioni al contorno, è possibile ricavare le temperature all’istante = 1 (cioè t = 1). Analogamente le temperature dei nodi all’istante seguente si calcolano partendo da quelle dell’istante precedente. Procedendo con questo metodo iterativo si viene a conoscenza delle temperature di tutti i nodi negli istanti considerati e si prosegue fino alla situazione stazionaria in cui più nulla cambia.. Per descrivere analiticamente il processo dobbiamo ricalcolare l’equazione di Fourier prendendo in considerazione il generico nodo n (e quindi la generica striscia al generico istante e stimare le variazioni termodinamiche avvenute nell’intervallo di tempo . Dobbiamo quindi scrivere: U Q Considerando la lastra di spessore e altezza unitaria svolgiamo l’uguaglianza e otteniamo CV Tnt 1 Tnt QSN ,IN QDX ,OUT dove QSN,IN è il calore che entra da sinistra e QDX,OUT è il calore che esce da destra. Noto che ho inserito nel primo termine la differenza di temperatura del generico nodo n in due precisi istanti di tempo successivi. Questo è dovuto al fatto che il mio problema è impostato in 2 Paolo Braglia – Matricola 127745 – Lezione del 11/12/2000 – Ore 16.30-18.30 forma finita e non più infinitesimale come eravamo abituati a considerare. Lo stesso discorso vale anche per il calore al secondo termine. Calcoliamo ora i singoli termini QSN , IN dt Tnt Tnt1 dX dove ho discretizzato la derivata attuando il rapporto incrementale. Analogamente QDX ,OUT Tnt1 Tnt Ora sostituiamo CV T t 1 n Tnt1 Tnt Tnt1 Tnt T t n Ricordo che le temperature di tutti i nodi agli istanti t sono note e quindi la mia unica incognita è Tnt+1. Ricaviamo quindi 2 Tnt 1 Tnt 1 2 CV t t T T n 1 n 1 2 C V che è la formula risolutiva dei transitori. Essa mi permette di ricavare i valori delle celle alla riga t+1 a patto che siano noti i valori della riga t. Guardando questa formula osservo che non posso scegliere un grande a piacere una volta che è stato fissato un passo spaziale X. Potrebbe infatti succedere che il termine moltiplicativo di Tnt diventi negativo rendendo l’equazione numericamente instabile. Le temperature non tenderebbero così più al valore nominale effettivo, ma produrrebbero oscillazioni che andrebbero via via amplificandosi nel tempo mandando il computer in overflow. Questo può essere logico anche intuitivamente in quanto non posso stimare un futuro troppo lontano se non conosco i passi intermedi, perché non ho abbastanza informazioni. Questo è comunque un problema di tipo fisico che non posso risolvere cambiando semplicemente l’algorimo di calcolo. Dobbiamo infatti ricordare che siamo giunti alla formula risolutiva partendo dal primo principio. Ipotizziamo di trovarci in una situazione in cui il nodo generico n ha una temperatura più bassa rispetto a quella dei nodi n-1 e n+1 che lo circondano e che il termine in esame sia negativo. Secondo la formula Tnt+1 dovrebbe quindi essere inferiore a Tnt. Questo però viola il secondo principio della termodinamica in quanto un corpo freddo circondato da due corpi più caldi si è trovato a cedere calore invece di riceverlo. Andiamo quindi incontro ad un paradosso. 3 Paolo Braglia – Matricola 127745 – Lezione del 11/12/2000 – Ore 16.30-18.30 Si può quindi introdurre il lim che corrisponde al maggior passo temporale accettabile. Imponendo la condizione di non negatività del termine sopra discusso: 1 2 lim CV 2 ricaviamo lim CV 2 2 Bisogna però fare anche attenzione a non eccedere attuando una discretizzazione troppo fina. Infatti utilizzare passi troppo piccoli risulta essere dannoso per il processo di calcolo anche se teoricamente non sembrerebbe. Visto che un eccesso di discretizzazione è altrettanto dannoso che una discretizzazione insufficiente si è vista la necessità di introdurre una discretizzazione ottima che garantisca il giusto compromesso tra le due. Generalmente si usa utilizzare il seguente ott: ott 2 lim 3 Se sostituiamo nell’equazione risolutiva il valore di lim otteniamo t 1 n T Tnt1 Tnt1 2 che corrisponde alla media temporale delle temperature del nodo n+1 e n-1 prese all’istante appena precedente. Ogni cella risente quindi solo ed esclusivamente della presenza delle due celle che stanno, rispetto a lei, in alto a destra e in alto a sinistra. Figura 3 - Schema risolutivo per un lim. 4 Paolo Braglia – Matricola 127745 – Lezione del 11/12/2000 – Ore 16.30-18.30 Analogamente se usiamo ott otteniamo t 1 n T Tnt Tnt1 Tnt1 3 Quindi il valore della generica cella risulta essere calcolato come media delle tre celle che le stanno sopra. Figura 4 - Schema risolutivo per un ott. ESEMPIO Consideriamo una lastra di spessore S = 25 cm e diffusività a = (C) = 0,023 m2/h. La temperatura della lastra è di 38 C. Al tempo Immergiamo il tutto in un pentolone d’olio bollente alla temperatura di 260 C. Vogliamo studiare il transitorio del materiale nei primi 3 minuti. Prima di cominciare dobbiamo però specificare le condizioni al contorno, cioè il particolare comportamento della pelle della lastra. Ipotizziamo che la pelle (corrispondente alle coordinate X=0 e X=S) assuma, immediatamente con l’immersione, la temperatura dell’olio e che questa temperatura sia costante durante il transitorio. Avremo quindi una temperatura della pelle Tp = 260 C costante nei tre minuti. Possiamo quindi ora attuare la discretizzazione spaziale. Per semplicità discretizzo con 9 nodi (0,1,…8) e avremo quindi 8 divisioni. Il passo spaziale risulta quindi essere: 0 1 S 0,12m 0,015m ND 8 2 3 4 5 6 7 8 Figura 5 - Discretizzazione spaziale della lastra in esame. Dalla figura noto che il problema è simmetrico e quindi lo sarà anche la soluzione. 5 Paolo Braglia – Matricola 127745 – Lezione del 11/12/2000 – Ore 16.30-18.30 Possiamo perciò scrivere: T0 = T8 T1 = T7 T2 = T6 T3 = T5 Decido di utilizzare il lim da cui: lim 0,015 18s 2 2a 0,023 2 3600 2 Per cui avremo (3*60/18)=10 passi temporali. Possiamo ora cominciare a riempire la tabella con le temperature dei nodi ai vari istanti. Io conosco a priori le condizioni al contorno e quelle iniziali. Per questo motivo sono immediatamente note la prima(e l’ultima) colonna e la prima riga. Avremo cosi il nodo 1 e il nodo 8 costantemente alla temperatura di 260 °C. Analogamente al tempo = 0 i nodi che non appartengono alla pelle avranno una temperatura di 38 °C. Le temperature delle restanti celle si calcolano secondo la formula risolutiva trovata e discussa in precedenza. Per cui se vogliamo conoscere T11 ,cioè il valore della cella (1,1), dovremo fare la media aritmetica tra la cella (0,0) e la cella (2,0) per un valore numerico di (260+38)/2 = 149 °C. Procedendo riga per riga iterativamente si viene a completare tutta la matrice e si conclude il problema. Tempo Idice di tempo in secondi corrispondente 0 0 18 1 36 2 54 3 72 4 90 5 108 6 126 7 144 8 162 9 180 10 0 260 260 260 260 260 260 260 260 260 260 260 1 38 149 149 177 177 191 191 201 201 210 210 2 38 38 94 94 121 121 142 142 159 159 174 Indice Indice didi nodo nodo 3 4 5 38 38 38 38 38 38 38 38 38 66 38 66 66 66 66 94 66 94 94 94 94 118 94 118 118 118 118 139 118 139 139 139 139 6 38 38 94 94 121 121 142 142 159 159 174 7 38 149 149 177 177 191 191 201 201 210 210 8 260 260 260 260 260 260 260 260 260 260 260 Figura 6 - Tabella risolutiva del problema in esame usando il lim. Analizzando la tabella si può verificare la simmetria sopra descritta. Si può anche notare che l’innalzamento progressivo delle temperature non è uguale per tutti i nodi, ma i nodi più esterni si scaldano più velocemente rispetto a quelli più interni. Per descrivere più accuratamente questo fenomeno possiamo tracciare un grafico che descrive le temperature dei nodi in funzione dell’indice di tempo t. 6 Paolo Braglia – Matricola 127745 – Lezione del 11/12/2000 – Ore 16.30-18.30 Temperature 300 250 nodi 0 e 8 nodi 1 e 7 nodi 2 e 6 nodi 3 e 5 nodo 4 200 150 100 50 0 0 1 2 3 4 5 6 7 8 9 10 Nodi Figura 7 – Grafico che mostra la variazione della temperatura in funzione dell’indice t per un lim Noto che le temperature di ciascun nodo non variano con continuità, ma per due istanti successivi assumono sempre lo stesso valore. Questo problema è dovuto al fatto che noi calcoliamo il valore di ogni cella prendendo in considerazione solo le due celle che le stanno in alto a destra e in alto a sinistra Se ripeto ora il calcolo utilizzando il ott = 2/3 lim = 12 s devo considerare anche la temperatura dello stesso nodo all’istante precedente. Da un lato quindi avrò un maggior numero di calcoli perché utilizzo un passo temporale più piccolo, ma dall’altro riesco ad ottenere un grafico che varia con continuità, a quindi più preciso. Tempo in Indicedi tempo secondi corrispondente 0 0 12 1 24 2 36 3 48 4 60 5 72 6 84 7 96 8 108 9 120 10 132 11 144 12 156 13 168 14 180 15 0 260 260 260 260 260 260 260 260 260 260 260 260 260 260 260 260 1 38 112 137 153 164 172 179 184 189 193 196 200 203 206 208 211 Indice di nodo 3 4 38 38 38 38 38 38 46 38 54 43 64 51 73 59 82 68 91 77 99 86 107 95 115 103 122 111 129 118 136 125 142 132 2 38 38 63 79 93 104 113 122 129 136 143 149 154 160 165 170 Figura 8 - Tabella risolutiva del problema in esame usando un ott 7 5 38 38 38 46 54 64 73 82 91 99 107 115 122 129 136 142 6 38 38 63 79 93 104 113 122 129 136 143 149 154 160 165 170 7 38 112 137 153 164 172 179 184 189 193 196 200 203 206 208 211 8 260 260 260 260 260 260 260 260 260 260 260 260 260 260 260 260 . Paolo Braglia – Matricola 127745 – Lezione del 11/12/2000 – Ore 16.30-18.30 Temperature 300 250 nodi 0 e 8 nodi 1 e 7 nodi 2 e 6 nodi 3 e 5 nodo 4 200 150 100 50 0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Nodi Figura 9 – Grafico che mostra l’andamento delle temperature in funzione di t per un ott Fino ad ora abbiamo considerato delle specifiche condizioni al contorno. Spesso invece succede che le temperature sulla pelle della lastra non siano bene precisate. In particolare il primo nodo potrebbe essere connesso da una resistenza termica a una temperatura nota. Questa nuova condizione al contorno può ad esempio essere descritta da un certo coefficiente dovuto alla convezione, all’irraggiamento o alla somma dei due. Sotto queste nuove ipotesi devo andare ad analizzare il comportamento del primo nodo che è rappresentativo di una porzione di lastra pari a . T Figura 10 - Esempio di primo nodo connesso a una temperatura nota tramite resistenza termica Dato che non posso più ritenere costante la temperatura del primo e dell’ultimo nodo mi devo andare a calcolare anche per queste regioni una formula risolutiva. Analogamente a quanto espresso in precedenza per i nodi interni avrò: U QSN , IN QDX ,OUT Per cui: T1t T0t t 1 t t CV T0 T0 T T0 2 8 Paolo Braglia – Matricola 127745 – Lezione del 11/12/2000 – Ore 16.30-18.30 da cui si ricava t 1 t T0 T0 1 2 CV C V 2 2 T T1t 2 CV CV 2 2 Questa è la formula ricorsiva che mi permette di calcolare la temperatura della pelle della lastra in funzione della temperatura che la stessa aveva all’istante precedente. Anche in questo caso, guardando la formula, noto che il termine moltiplicativo di T0t potrebbe essere negativo provocando la violazione del secondo principio della termodinamica.. In particolare tanto più è grande tanto più ci saranno problemi. Dovrò quindi introdurre un passo per i nodi esterni, che difficilmente coincide con quello dei nodi interni, ma risulta essere più piccolo. Per risolvere questo inconveniente basta scegliere il più piccolo passo temporale e applicarlo su tutta la lastra (pelle compresa). Possiamo quindi affermare a priori che la presenza di convezione mi porta ad usare passi temporali più piccoli. Bisogna tener presente che in presenza da molto grandi mi posso trovare davanti passi ridicolmente piccoli che mi portano a dover affrontare un’infinità di calcoli con grande dispendio di tempo e energia. Uguagliando a zero il termine sopra descritto posso ricavate il massimo passo temporale applicabile sul primo nodo: lim, 0 1 2 1 2 a 1 Possiamo a questo punto facilmente vedere la dipendenza del passo da . Guardando la formula possiamo notare anche la presenza del termine: Numero di BIOT che rappresenta un numero puro ed è caratteristico dei fenomeni di transitorio termico. Possiamo affermare che quando il numero di Biot >40 ,cioè con molto grande, la temperatura alle pareti sia equivalente a quella all’infinito, e ricadiamo nel caso descritto in precedenza. Viceversa se numero di Biot<0.1 si può ipotizzare che l’intera parete sia isoterma in ogni istante. In questo caso non avremmo un problema di transitorio in quanto la mia lastra entra subito istantaneamente a regime. Nei casi intermedi la convezione e l’irraggiamento non sono trascurabili e devo studiare l’intero transitorio passo per passo anche sulle pelli. Per risolvere problemi di questo genere devo utilizzare quello che è chiamato metodo implicito. Fino ad ora abbiamo utilizzato un metodo esplicito in quanto era possibile esprimere un’unica incognita in funzione di termini tutti noti ragionando dal presente verso il futuro. 9 Paolo Braglia – Matricola 127745 – Lezione del 11/12/2000 – Ore 16.30-18.30 Il metodo implicito, viceversa, ragiona dal presente verso il passato. Quando vado a fare il bilancio dell’energia avrò perciò una derivata temporale sinistra e non più destra. CV T T t 1 n t n Tnt1 Tnt Tnt1 Tnt In questo caso però non posso ricavare subito la soluzione in quanto io conosco solo le temperature del passato. Ho quindi 3 incognite. Noto però che io ho scritto il bilancio relativo solo al nodo generico n. Se io ripeto il calcolo per i nodi interni (n=1,…..n=n-1) alla fine trovo un sistema di n equazioni in n incognite risolvibile con tecniche di calcolo a noi note. Una riga generica di questa matrice potrebbe essere T t n 1 2 t t t 1 1 T T T n n 1 n 2 2 2 CV CV CV elemento diagonale ripetendo lo stesso procedimento per tutti i nodi interni posso ottenere la seguente rappresentazione AT t T t 1 dove A è una matrice tridiagonale. Moltiplico entrambi i membri per A-1 I T t A 1 T t 1 Il vettore delle temperature cercate si ottiene quindi moltiplicando le temperature note per la matrice inversa di A. Concludendo posso affermare che il metodo implicito è sempre stabile sotto qualsiasi condizione al contorno. Non ho più il problema di oscillazioni in caso di un passo temporale troppo ampio come succedeva utilizzando il metodo esplicito. 10