Risoluzione di EDP con MES-NI e Domain Decomposition

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Risoluzione di EDP con MES-NI e Domain Decomposition"

Transcript

1 POLITECNICO DI MILANO Corso di Laurea in Ingegneria Matematica Progetto di Analisi Numerica delle EDP 2 e Programmazione Avanzata Risoluzione di EDP con MES-NI e Domain Decomposition Luca Bertagna Alessio Fumagalli Anno Accademico

2

3 Indice Introduzione 5 Programma e pacchetti necessari 6 1 Il Metodo degli Elementi Spettrali Richiami di teoria Prove numeriche di convergenza Il metodo della decomposizione dei domini Il metodo di Schwartz Il metodo di Schwartz additivo Prove numeriche di convergenza Un problema di trasporto Dettagli Implementativi 19 3 Classi di base Classe Point Classe Edge Classe Elem Classe Matrix Matrix::add Classi avanzate Classe Mesh Mesh::build boundary groups Mesh::build numeration Classe IntGL IntGL::int2d IntGL::int1d Classe problema problema::build Stiffness problema::build F Codizioni di Neumann e di Dirichlet problema::save data Classe problemadd problemadd:: partiziona problemadd:: Metis problemadd::crea files mesh problemadd:: crea mappe problemadd::crea corrispondenze problemadd::crea problemi problemadd::risolvi problemadd::algebraic solver Funzioni collegate Funzioni generiche direct solver iterative solver Funzioni inerenti all integrazione

4 A Tutorial 41 A.1 Generare la mesh con EMC A.2 Utilizzo del programma in versione semplice A.3 Utilizzo del programma in versione estesa

5 Introduzione Nei metodi ad elementi finiti applicati a problemi ellittici si è sempre condotti alla risoluzione di un sistema lineare in genere molto grande, le cui incognite sono le alzate della soluzione nei nodi della griglia computazionale. La teoria dell interpolazione composita garantisce a questo metodo una convergenza di ordine legato al grado di approssimazione polinomiale utilizzato. Tuttavia, l idea di utilizzare polinomi di grado sempre più alto non paga, in quanto, sempre grazie alla teoria dell interpolazione, sappiamo che su griglie equispaziate l errore di interpolazione rischia di crescere all aumentare del grado. La soluzione a questo problema si può trovare utilizzando dei nodi non equispaziati più fitti verso il bordo del dominio: i nodi di Gauss. La scelta di questi nodi, porta a garantire buona convergenza anche rispetto al grado polinomiale di apporssimazione. I metodi spettrali e i metodi ad elementi spettrali, sfruttano questa caratteristica, utilizzando come nodi di quadratura i nodi di Gauss-Lobatto. Questi si caratterizzano come zeri di polinomi appartenenti ad opportune famiglie di polinomi ortogonali. Tra queste quella senz altro più interessante è la famiglia dei polinomi di Legendre, in quanto sono ortogonali nel senso di L 2 rispetto alla funzione peso w(x) = 1. Un altro problema dei metodi ad elementi finiti, ma anche dei metodi spettrali, è quello di portare alla risoluzione di grossi sistemi lineari, spesso molto mal condizionati. Una soluzione a questo problema è ovviamente la ricerca di buoni precondizionatori, non molto costosi computazionalmente da costruire. Un altra strada è quella di dividere il problema originale in tanti sottoproblemi, equivalenti a quello di partenza, ma formulati in opportuni sottodomini del dominio di partenza, con la richiesta che l unione di questi sottodomini, ricrei tutto il dominio di partenza e con l imposizione di condizioni di interfaccia tra i vari sottoproblemi. Questa logica porta al metodo della decomposizione dei domini, che ha come vantaggio quello di risolvere più problemi, ma di dimensioni in gnere molto minori di quello di partenza. In questo progetto implementiamo un codice per la risoluzione di problemi ellittici lineari tramite il metodo della decomposizione dei domini, utilizzando un solutorie ad elementi spettrali, anch esso implementato da noi, su ogni sottodominio. Testeremo alcune proprietà di convergenza del metodo e lo applicheremo poi ad un problema di diffusione e trasporto. Ad ogni passo, e ad ogni sotto dominio, leggo i dati relativi ai bordi fittizzi su tutti gli altri sotto domini che contengono gli stessi nodi, per poi farne una media. Questo perché se leggessi da un solo sotto dominio, potrebbe capitare che durante il processo iterativo si portano su una soluzione non corretta, leggendo invece da tutti i sotto domini possibili tale fenomeno non si presenta, tale è riportato in figura 14. 5

6 Programma e pacchetti necessari I programmi e i pacchetti necessari per un buon funzionamento del codice sono i seguenti: UMFPACK 4.4: permette di risolvere sistemi lineari. Si può scaricare dal sito: EMC2: è un programma per generare mesh quadrangolari. Si può scaricare dal sito: GnuPlot 4.2: programma per la visualizzazione grafica. Si può scaricare dal sito: Metis: programma che partiziona un grafo in più sotto grafi. Si può scaricare dal sito: GetPot: libreria che gestisce la lettura dei dati utili per la corretta esecuzione del programma. Si può scaricare dal sito: Tutti i programmi citati sono completamente gratuiti. Il programma per la generazione della mesh, può essere sostituito con qualunque altro programma per la generazione di mesh quadrangolari 1, a patto che il file in cui si memorizza la mesh, abbia la stessa formattazione del formato di EMC2, la cui descrizione daremo in seguito. 1 Importante: non vanno bene mesh ibride contenenti sia triangoli che quadrilateri. 6

7 7 1 Il Metodo degli Elementi Spettrali In questo capitolo introduciamo brevemente i metodi ad elementi spettrali, nei quali la velocità di convergenza (rispetto al grado di approssimazione) è limitata dalla sola regolarità della soluzione del problema, ed è di tipo esponenziale per soluzioni analitiche. 1.1 Richiami di teoria Consideriamo il seguente problema ellittico: div (α(x, y) u) + β(x, y) u + γ(x, y)u = f(x, y) in Ω u = u Γ D su Γ D (P) ν u = u Γ N su Γ N dove i dati hanno le regolarità opportune e u H 1 (Ω). Riscriviamo il problema (P) nella sua formulazione debole: con: a(u, v) = F (v) v V = H 1 ΓD(Ω), u V (PD) a(u, v) = α(x, y) u v + β(x, y) uv + γ(x, y)uv Ω Ω Ω F (v) = fv + u Γ N vdσ a(r, v) uγ D Ω Γ N dove R è una qualunque funzione di uγ D H1 che abbia la stessa traccia di u su Γ D. Una volta creata la mesh di quadrilateri T h, introduciamo sull elemento di riferimento [ 1, 1] 2 lo spazio di polinomi { N Q N (ˆΩ) = v(x, y) = a nm x m y n, a nm R n,m=0 cioè lo spazio delle funzioni che, fissata una delle due variabili, sono polinomiali di grado minore o uguale a N nell altra. A questo punto definiamo lo spazio degli elementi spettrali come l insieme delle funzioni continue che, ristette ad ogni singolo elemento K, sono le immagini di polinomi che stanno in Q N, attraverso la mappa ϕ che mappa l elemento di riferimento ˆK in K. D ora in poi quando diremo che una funzione è in Q N (K), sottintenderemo che è in realtà immagine di una funzione in Q N ( ˆK). Per passare alla discretizzazione ad elementi spettrali con integrazione numerica, dobbiamo prima introdurre i polinomi di Legendre; essi sono definiti nell intervallo [ 1, 1] attraverso la relazione di ortogonalità in L 2 ( 1, 1) rispetto alla funzione peso w(x) = 1, ossia 1 1 L n (x)l m (x) dx = 2 2n + 1 δ nm. Possono essere tuttavia facilmente calcolati grazie alla relazione ricorsiva L n+1 (x) = 2n + 1 n + 1 xl n(x) n n + 1 L n 1(x) n = 1, 2,... L 0 (x) = 0, L 1 (x) = x (1) I nodi di Legendre-Gauss-Lobatto (in breve nodi LGL) per l integrazione numerica nell intervallo di riferimento ( 1, 1) sono definiti attraverso questi polinomi. Più precisamente, volendo usare N +1

8 8 1 Il Metodo degli Elementi Spettrali nodi di quadratura, si pone x 0 = 1, x N = 1 e si prendono i restanti N 1 nodi pari agli zeri della derivata del polinomio di Legendre di grado N. A questo punto dobbiamo scegliere la base per lo spazio degli elementi spettrali. Scegliamo una base lagrangiana sui nodi LGL, ossia scegliamo l insieme delle funzioni ψ i (x) : ψ i (x j ) = δ ij 0 i, j N (2) dove x 0,,x N sono i nodi LGL. Dunque lo spazio V h del problema ad elementi spettrali è { N V h = v Q N (Ω) : v(x, y) = v mn ψ m (x)ψ n (y), v Γd = 0. m,n=0 Nel metodo degli elementi spettrali con integrazione numerica, come dice il nome, gli integrali vengono sostituiti da formule di quadratura. In particolare vengono usate formule di integrazione gaussiane di tipo interpolatorio f(x, y) dx dy N α ij f(x i, x j ) i,j dove x i sono i nodi LGL e i pesi, nel caso monodimensionale, sono dati da α i = ψ i (x) dx = n(n + 1) [L N (x i )] 2 j = 0,..., N (3) definendo poi α ij = α i α j per il caso bidimensionale. Nel caso in cui il quadrato non fosse quello di riferimento, attraverso un cambio di variabili, possiamo riportare il calcolo dell integrale sul quadrato di riferimento. In particolare, se le coordinate nell elemento K sono definite dalla mappa invertibile x = F(ˆx), e J è la matrice Jacobiana associata, risulta f(x)dx = f(f 1 (x)) detj dˆx K mentre nel caso in cui compaiano gradienti, abbiamo f(x)dx = J T ˆ f(f 1 (x)) detj dˆx K ˆK ˆK dove il cappuccio sopra il simbolo di gradiente indica che le derivate sono fatte rispetto alle coordinate dell elemento di riferimento. A questo punto, definendo il prodotto scalare discreto in L 2 ( 1, 1) N (f, g) N = α ij f(x i )g(x j ) (4) i,j=1 possiamo scrivere la formulazione MES-NI del problema PD: M a N (u n, v n ) = m=1 M F N (v n ) v n V h (PDD-NI) m=1 Tale formulazione si ottiene sostanzialmente dalla formulazione debole del problema, sostituendo i prodotti scalari continui con quelli discreti: a N (u n, v n ) = (α u n, v n ) N + (β u n, v n ) N + (γu n v n ) N F N (v n ) = (f, v n ) N + ( u n,γ N, v n )N,Γ N

9 1.2 Prove numeriche di convergenza 9 Osservazione 1. Quando si calcolano numericamente integrali in cui compare il gradiente, non è necessario calcolare i gradienti delle funzioni ψ i ; gli integrali numerici, infatti, dipendono solo dal valore assunto dalla funzione integranda nei nodi, cioè, in questo caso, dai valori delle derivate delle funzioni di base nei nodi LGL. Questi valori possono facilmente essere memorizzati una volta per tutte in una matrice D R (N+1) (N+1), detta matrice della derivata pseudospettrale, che ha per elementi D ij = ψ j (x i). Questa matrice associa ad un vettore v R N+1, le cui componenti sono i valori nodali v(x), il vettore w = Dv, le cui componenti sono i valori nodali della derivata del polinomio interpolante di v(x), ossia w i = (Π N v(x)). Si può mostrare che valgono le relazioni N(N + 1) 4 N(N + 1) 4 D ij = L N (x i ) (x i x j )L N (x j ) i = j = 0 i = j = N i j 0 altrimenti Si può dimostrare che per il metodo degli elementi spettrali vale la seguente stima a priori dell errore: u u n H k (Ω) C ( M m=1 ) 1/2 h 2(min(Nm+1,sm) k) m Nm 2(k sm) u 2 H sm;nm (Ωm) Usando un grado polinomiale di approssimazione uniforme pari a N, supponendo una regolarità della soluzione uniforme pari a s e ponendo h = max h m, la stima può essere riscritta in maniera più semplice come: (5) u u n H k (Ω) C(s)h min(n+1,s) k N k s u H s;n (Ω) (6) dove s u H s;n (Ω) = j=min(s,n+1) 1/2 v (j) 2 L 2 (Ω). Dunque la stime per la norma L 2 e per quella H 1 sono rispettivamente u u n L 2 (Ω) C(s)h min(n+1,s) N s u H s;n (Ω) (7) u u n H 1 (Ω) C(s)h min(n+1,s) 1 N 1 s u H s;n (Ω). (8) 1.2 Prove numeriche di convergenza Effettuiamo ora qualche test numerico, per verificare il giusto andamento dell errore di approssimazione rispetto alla spaziatura della mesh e rispetto al grado polinomiale di approssimazione. Problema 1. Consideriamo il seguente problema: u(x, y) = f(x, y) in Ω = [0, 5] 2 u(x, 5) = u(x, 0) = (x 2.5) 4 u(0, y) = 0 u(1, y) = (P1)

10 10 1 Il Metodo degli Elementi Spettrali dove f(x, y) = { 12(x 2.5) 2 se x < altrove (9) La soluzione di questo problema è banalmente la funzione u(x, y) = { (x 2.5) 4 se x < altrimenti che possiede una discontinuità della derivata quarta sulla retta x = 2.5 e dunque ha regolarità H 4 (Ω). Figura 1: Simulazione numerica per il problema (P1) con passo di griglia h = e grado N = 3. Effettuando alcune simulazioni numeriche otteniamo il seguente andamento dell errore in norma H 1 in funzione della spaziatura della mesh: N = 1 N = 2 N = 3 N = 4 h = e e e e+01 h = e e e e 08 h = e e e e 08 h = e e e e 08 h = e e e e 07 h = e e e e 07 Come si può notare, nel caso di grado N = 4, il metodo non ha più problemi a catturare la soluzione esatta, in quanto essa, in ogni elemento 2, appartiene allo spazio polinomiale di approssimazione V h 3. Quindi, per calcolare l andamento dell errore, facciamo uso solo delle prime tre colonne della tabella. Sfruttando la stima (8), nel caso in cui consideriamo un dimezzamento successivo del passo di griglia, possiamo trovare la semplice relazione 2 Le griglie sono costruite in modo che la retta critica x = 2.5 non sia mai interna ad alcun elemento. Ciò fa sì che la soluzione, ristretta ad un qualunque elemento, sia sempre un polinomio di quarto grado. 3 Facciamo osservare che, nonostante l errore sia dell ordine di 10 8, siamo già ai limiti della precisione della macchina. Infatti, i calcoli per l errore che vengono fatti sui singoli nodi vanno a costruire l errore al quadrato. Di conseguenza, estraendo poi la radice per avere la norma H 1 (Ω) vera e propria, si trovano dei numeri dell ordine della radice della precisione macchina.

11 1.2 Prove numeriche di convergenza 11 p log (e n+1/e n ) log 2 dove log indica il logaritmo naturale. Se la usiamo per gli errori riportati nella precedente tabella, otteniamo che sono in perfetto accordo con la teoria. N = 1 N =2 N = 3 p p p p p p teo Problema 2. Il secondo problema affrontato è il seguente: { u(x, y) = 2π 2 sin(πx) sin(πy) in Ω = [0, 5] 2 u(x, y) = 0 su Ω (P2) la cui soluzione esatta, che appartiene a C (Ω) e dunque anche a H k (Ω) per ogni k, è u(x, y) = sin(πx) sin(πy) Figura 2: Simulazione numerica per il problema (P2) con passo di griglia h = e grado N = 3. Effettuando alcune simulazioni numeriche otteniamo il seguente andamento dell errore in norma H 1 in funzione della spaziatura della mesh: N = 1 N = 2 N = 3 N = 5 h = e e e e+01 h = e e e e+00 h = e e e e 01 h = e e e e 03 h = e e e e 04 h = e e e e 06

12 12 1 Il Metodo degli Elementi Spettrali Dato che la soluzione è analitica, l ordine di convergenza è limitato solo dal grado degli elementi utilizzati ed infatti otteniamo la seguente stima N = 1 N = 2 N = 3 N = 5 p p p p p p teo Il valore dell errore nel caso di griglia mono-elemento con grado di approssimazione N = 1 è senza significato. Infatti, gli unici nodi della mesh sono i quattro vertici, dove per altro il valore della soluzione è imposto ed è pari a zero. Ne segue che il gradiente numerico è nullo, così come lo è quello della soluzione esatta in quei punti, da cui ne deriva un errore nullo. Di conseguenza, anche il primo valore della stima dell ordine di convergenza per elementi lineari è privo di significato, in quanto viziato dall errore precedente. Problema 3. Il terzo problema affrontato è il seguente: u(u, y) = 15 x in Ω = [0, 5] 2 4 u(x, 0) = u(x, 5) = x 5/2 u(0, y) = 0 u(5, y) = (P3) la cui soluzine esatta è u(x, y) = x 5/2 (10) che appartiene ha regolarità H 3 (Ω). Figura 3: Simulazione numerica per il problema (P3) con passo di griglia h = e grado N = 3. Effettuando alcune simulazioni numeriche otteniamo il seguente andamento dell errore in norma H 1 in funzione della spaziatura della mesh:

13 1.2 Prove numeriche di convergenza 13 N = 1 N = 2 N = 5 h = e e e 01 h = e e e 02 h = e e e 03 h = e e e 03 h = e e e 04 h = e e e 04 Dato che la soluzione è H 3 ε (Ω), con ε > 0, dovremmo avere un ordine di convergenza limitato; la stima a priori (8) ci suggerisce che quest ordine dovrebbe essere p 2, raggiunto con N 2. Dagli errori della tabella precedente ricaviamo in perfetto accordo con la teoria. N = 1 N = 2 N = 5 p p p p p p teo Osservazione 2. Come suggerisce la stima (8) 00e8 possibili fare tutti questi ragionamenti lasciando fissa la spaziatura della mesh, e aumentando il grado dei polinomi di Lagrange. Tuttavia dopo alcune prove numeriche abbiamo notato che i risultati ottenuti non erano soddisfacenti. Infatti l ordine di convergenza era notevolmente superiore a quello previsto dalla stima, fino ad un grado N = 10 in cui l errore smetteva di scendere diventando praticamente stazionario.

14 14 2 Il metodo della decomposizione dei domini 2 Il metodo della decomposizione dei domini Il metodo della decomposizione dei domini cerca di dividere il problema in più sottoproblemi, ma di dimensione minore. Ovviamente questi problemi non possono e non devono essere totalmente indipendenti, ma devono in qualche modo potersi parlare. Il punto in cui comunicano è ovviamente laddove i vari sottodomini si toccano e a questo punto occorre fare una distinzione tra i due casi principali: il caso in cui tra i sottodomini vi sia sovrapposizione (metodo di Schwartz), e il caso in cui invece non ve ne sia (metodo di Schur). Quest ultimo caso è un po più complicato e richiede un analisi più fine. In questo progetto ci occupiamo solo del metodo di Schwartz. L idea di base, che sta comunque alla base di entrambi i metodi, è di risolvere il problema di partenza ristretto ai vari sottodomini, aggiungendo delle opportune condizioni sul bordo che è stato introdotto a causa del partizionamento (d ora in poi chiamato per semplicità bordo artificiale). Queste condizioni al bordo devono tener conto della soluzione nell altro dominio e sono di fatto l unico vero collegamento tra i vari problemi. 2.1 Il metodo di Schwartz Nel metodo di Schwartz si costruisce una successione di soluzioni nei vari sottodomini. Fissata una soluzione inizale, ad ogni iterazione, si risolvono i vari problemi, mettendo come condizione sul bordo artificiale una condizione di Dirichlet, usando il valore della soluzione nel sottodominio adiacente all iterazione precedente. È evidente già da questo punto come una maggiore sovrapposizione tra i domini debba garantire una convergenza più rapida in quanto il dato sul bordo artificiale viene preso più all interno nel dominio adiacente, quindi più lontano da dove la soluzione è imposta da noi sulla base dell iterata precedente. Vi sono due possibilità di comunicazione tra i vari domini: la prima prevede che si risolvano tutti i problemi e poi avvenga lo scambio delle informazioni; la seconda, invece, consiste nel risolvere i vari problemi in modo sequenziale, utilizzando i valori al bordo più aggiornati possibile, ossia usando, ove possibile, quelli degli altri domini appena calcolati nell iterazione corrente. La prima versione prende il nome di metodo di Schwartz additivo, mentre la seconda è detta metodo di Schwartz moltiplicativo. Chiaramente il metodo moltiplicativo converge più rapidamente di quello additivo, in quanto utilizza subito le nuove informazioni appena calcolate, senza aspettare l iterazione seguente. Il vantaggio del metodo additivo è invece nel fatto che è parallelizzabile, ossia i vari problemi possono essere risolti in parallelo, in modo indipendente l uno dall altro, dato che la comunicazione risulta necessara solo dopo aver determinato le varie soluzioni. Il motivo degli aggettivi moltiplicativo e additivo, sta nel fatto che questi due metodi possono essere reinterpretati come delle iterazioni del metodo di Richardson precondizionato su un problema opportuno. L espressione del precondizionatore nel caso additivo è data dalla somma di alcune matrici, mentre nel caso moltiplicativo presenta anche dei prodotti matriciali. 2.2 Il metodo di Schwartz additivo Il metodo di Schwartz additivo può essere riassunto nel seguente schema iterativo. Fissato u 0 Lu k+1 u k+1 i = f i in Ω i i = u k j su Γ i +B.C. su Ω i \ Γ i. (11) dove i pedici i e j denotano la restrizione al dominio i-esimo e j-esimo (con i j in modo che i domini si scambino informazioni). È evidente come ad ogni iterazione i dati sul bordo artificiale migliorino, in quanto vengono posti uguali alla traccia delle soluzioni dei domini confinanti. Questo mette tuttavia in luce uno dei difetti del metodo: proprio perché le informazioni si propagano solo tra domini confinanti, al crescere del loro numero, la velocità di convergenza cala, poiché le informazioni ci mettono più tempo a propagarsi. Questo difetto del metodo ne rende in principio poco conveniente l implementazione in parallelo, che è l unico vantaggio del metodo additivo rispetto a quello moltiplicativo. Si dice che il metodo non è scalabile, ossia che il tempo di risoluzione non

15 2.3 Prove numeriche di convergenza 15 aumenta all aumentare del numero di processori disponibili. Si può ovviare a questo problema introducendo un problema coarse, che ha il compito di propagare un po di informazione in tutto il dominio, accelerando la convergenza. Tale tencica prende il nome di metodo di Schwartz a due livelli, ma non ce ne occupiamo in questo progetto. Vediamo ora di reinterpretare il metodo di Schwartz additivo come un metodo di Richardson precondizionato. Per fare questo introduciamo degli operatori di restrizione e di allargamento associati al dominio i-esimo, che denotiamo con R i e Ri t rispettivamente. Questi operatori sono a conti fatti delle matrici rettangolari. Il primo (quello di restrizione) prende un vettore u h definito su tutti i nodi di Ω e ne seleziona le componenti relative ai nodi contenuti in Ω i, mentre il secondo (quello di allargamento) fa esattamente il contrario, mettendo a zero le componenti in più del vettore esteso. Questi operatori possono anche essere applicati alle matrici di rigidezza, ottenendo che, detta A i la matrice di rigidezza del dominio i-esimo, risulta A i = R i ARi t. Fatto questo il metodo di Schwartz può essere riscritto come u k+1 = u k + ( ND ) (f RiA t 1 R i Au k ). (12) Definendo quindi il precondizionatore di Schwartz additivo ad un livello i=1 giungiamo all espressione P 1 a1 RiA t 1 R i = ND i=1 u k+1 = u k + P 1 a1 rk (13) che è la tipica espressione di un metodo di Richardson precondizionato con parametro di accellerazione α = 1. Come detto in precedenza, all aumentare del numero di domini, aumenta anche il numero di iterazioni necessarie alla convergenza del metodo, in quanto le informazioni ci impiegano più tempo ad attraversare il dominio. Tradotto in termini del metodo di Richardson, questo significa che il condizionamento della matrice precondizionata peggiora all aumentare del numero di sottodomini. Infatti, vale la stima cond ( Pa1 1 A) C 1 (14) δh dove δ è lo spessore della zona di sovrapposizione tra i domini e H è il massimo diametro dei sottodomini. 2.3 Prove numeriche di convergenza Volendo stimare il numero di condizionamento della matrice precondizionata per qualche simulazione numerica, sarebbe in teoria necessario calcolarne l autovalore massimo e quello minimo, ma questo è eccessivamente costoso per i nostri scopi. Dato che il buono o cattivo condizionamento è strettamente correlato con la veloce o lenta convergenza del metodo iterativo, prendiamo come valore significativo il numero di iterazioni del metodo di Richardson. Abbiamo dunque effettuato delle simulazioni su un dominio quadrato con una mesh abbastanza fitta da far sì che un elevato numero di sottodomini non portasse ad avere domini con interno discreto vuoto e abbiamo controllato il numero di iterazioni al diminuire del diametro dei sottodomini (cioè all aumentare del loro numero), controllando anche cosa succede nel caso di overlap singolo o doppio, ottenendo i risultati riportati in figura (4) Possiamo costruire un altro grafico strettamente collegato al caso precedente: dato che il diametro dei sottodomini in prima approssimazione è pari all inverso della radice del numero degli stessi, il condizionamento dovrebbe crescere come la radice del numero di sottodiomini. Riportando dunque i risultati in figura (4) in funzione del numero di sottodomini, otteniamo il grafico riportato in figura (5). In modo speculare abbiamo anche effettuato simulazioni numeriche per vedere l andamento del numero di iterazioni al diminuire dello spessore δ di sovrapposizione dei domini. Per fare questo

16 16 2 Il metodo della decomposizione dei domini Figura 4: Andamento del numero di iterazioni del metodo di Richardson in funzione del massimo diametro dei sottodomini. Figura 5: Andamento del numero di iterazioni del metodo di Richardson in funzione del massimo diametro dei sottodomini. abbiamo utilizzato due sottodomini con overlap singolo e abbiamo infittito via via la griglia, di modo che lo spessore dell overlap diventasse sempre più piccolo. L andamento del numero di iterazioni in funzione di δ è riportato in figura (6).

17 2.4 Un problema di trasporto 17 Figura 6: Andamento del numero di iterazioni del metodo di Richardson in funzione dello spessore δ di sovrapposizione tra i domini. 2.4 Un problema di trasporto Proviamo ora a considerare un problema un po più complesso di quelli considerati precedentemente. Consideriamo α u + b u = 0 in Ω u = 1 su Γ D (15) u = 0 su Γ N dove Ω è il quadrato [0, 1] 2 con al suo interno alcuni buchi, come illustrato in figura (7). L incognita u possiamo pensarla come lo stato stazionario della concentrazione di un inquinante che diffonde nell aria sotto l azione di un campo di trasporto impostob. In questo modello il buco colorato in rosso nel dominio può essere interpretato come una ciminiera, sul bordod ella quale la concentrazione di inquinante rimane fissa a causa della continua emissione. Le zone colorate in blu possono essere interpretate come delle altre strutture nelle vicinanze della ciminiera. La condizione al bordo su queste strutture è di derivata normale nulla (attraverso le pareti non vi è flusso di inquinante). La condizione ideale da porre al bordo esterno sarebbe probabilmente una condizione di radiazione o condizione di Robin. Il nostro codice, tuttavia, non riesce a gestire tali condizioni, perciò abbiamo optato per una condizione di Dirichlet omogenea. Per la risoluzione abbiamo usato cinque sottodomini, come si vede bene dalle diverse colorazioni della mesh in figura (7), grado di approssimazione N = 4, overlap singolo e tolleranza sul residuo pari a 1e 04. Il numero di elementi della griglia è pari a 924. Inoltre abbiamo posto α = 1 e b = [ 10, 10] T, che equivale alla situazione in cui il vento soffia verso l angolo in basso a destra, ossia spinge l inquinante emesso dalla ciminiera verso gli edifici. La soluzione ottenuta rispecchia le aspettative, in quanto presenta un chiaro trasporto nella direzione del vento e un accumulo di inquinante nelle pareti esposte al vento, come si può notare dal grafico (8) Per quanto riguarda i tempi di esecuzione, il programma ha impiegato per essere esguito completamente un totale di 723 secondi, così distribuiti: acquisizione dati e preprocessing, 0 secondi.

18 18 2 Il metodo della decomposizione dei domini Figura 7: La mesh utilizzata per il problema (15). Il bordo del buco colorato in rosso costituisce il bordo di Dirichlet, mentre il bordo esterno e il bordo dei buchi colorati in blu costituiscono quello di Neumann. Figura 8: Contour plot della concentrazione u per il problema (15). instanzianziazione del problema, 11 secondi, sostanzialmente spesi nel partizionamento del dominio. creazione dei sottoproblemi, 61 secondi, sostanzialmente spesi nell assemblaggio delle matrici di stiffness locali. ciclo iterativo, 649 secondi, sostanzialmente spesi nella risoluzione dei sistemi lineari locali per l aggiornamento dell incremento. salvataggio mesh e soluzione, 2 secondi.

19 19 Dettagli Implementativi L intero programma è stato gestito per rendere il più agevole possibile l implementazione algoritmica per la costruzione e la successiva risoluzione di problemi ellittici lineari. Il main, infatti, è molto semplice e intuitivo e per fare ciò sono state sviluppate diverse classi di base e numerose classi avanzate. Le prime hanno permesso l introduzione di concetti semplici e ben implementati, permettendo quindi di semplificare numerose operazioni fatte nelle classi più complesse. L ottimizzazione del codice si è concentrata per lo più sulle classi di base e sulla classe che permette di integrare, in quanto infatti appartengono proprio a loro i metodi che vengono richiamati maggiormente. Alcune classi avanzate, invece, hanno metodi lunghi e complessi che devono però essere richiamati una sola volta; per loro non abbiamo provato a ottimizzare il codice, cercando di privilegiare la maggior leggibilità rispetto all efficienza (che è pur sempre buona). La lettura dei dati viene fatta utilizzando il pacchetto GetPot, che permette di gestire comodamente files contenenti dati che poi servono al programma, senza dover ricompilare ogni volta il programma. Riscrivendo opportunamente il file main.cpp, è comunque possibile utilizzare tutto il programma senza l uso di GetPot, che tuttavia ci sentiamo di consigliare fortemente. La gestione degli errori all interno di tutto il codice è stata fatta utilizzando l estensione della funzione assert, implementata dal prof. Formaggia: ASSERTM contenuta nel file extendedassert.hpp. Il messaggio di output che genera prima di fermare il programma è in un formato standard: prima di tutto si specifica la funzione o il metodo che genera l errore e poi viene spiegata la tipologia stessa dell errore. In questo modo l utente, e il programmatore, possono trovare velocemente l errore nel programma. Utilizzando l istruzione #define NDEBUG per il pre-processore, si possono disattivare tutte le chiamate alla funzione ASSERTM, e rendere più veloce il programma. 3 Classi di base In questa sezione presenteremo le classi di base. Esse risultano molto semplici dal punto di vista implementativo, ma sono la base per una buona programmazione ed efficienza per le classe più complesse. 3.1 Classe Point È la classe base per l intero programma, permette di gestire un punto geometrico, inteso come coppia (x, y). class Point{ Uint _Id; double _x; double _y; A suo interno, oltre al valore di ascissa e di ordinata, troviamo anche un numero identificativo, utile a poter distinguere più agevolmente un punto da un altro. Troviamo inoltre metodi standard di lettura degli attributi e l overloading dell operatore di uguaglianza =. 3.2 Classe Edge La classe Edge permette di gestire i lati come enti geometrici. class Edge{ Uint _Id; Uint _first; Uint _last; Uint _elem_right; Uint _elem_left;

20 20 3 Classi di base std::vector<uint> _int_dof; Al suo interno troviamo esclusivamente gli Id di tutti i punti che vi appartengono, questo per poter facilitare sia la ricerca dei punti, sia per non dover memorizzare tutti i punti per tutti i lati. Gli Id dei punti memorizzati sul lato sono gestiti da una classe superiore, in cui sono presenti tutti i punti intesi come Point. Vi è una suddivisione tra i nodi interni e quelli di bordo, che risulta molto comoda per numerose operazioni successive. Vengono memorizzati anche gli Id dell elemento che sta alla sinistra del lato e dell elemento che sta alla destra del lato; questo sempre per poter facilitare eventuali ricerche o per determiare se il lato è di bordo o meno. Nella memorizzazione degli Id estremi del lato, il primo è sempre quello con Id più piccolo. Per quanto riguarda i metodi contenuti, troviamo i metodi standard di lettura, l overloading dell operatore di uguaglianza = e qualche metodo di scrittura utile nella fase di creazione degli enti che costituiscono la mesh. L attributo _elem_left, ad esempio, non può infatti essere noto prima di aver costruito tutti gli elementi, i quali, per altro, non possono essere costruiti prima di aver creato tutti i lati. 3.3 Classe Elem Classe che implementa un generico quadrilatero derivante dal partizionamento, a mezzo di mesh, di un generico dominio. class Elem{ Uint _Id; std::vector<uint> _vertices; std::vector<uint> _edges; std::vector<int> _orient; std::vector<uint> _global_num; std::vector<point> _nodes; In essa troviamo, oltre all Id univocamente identificativo dell elemento, anche un vettore con i quattro Id dei quattro vertici che identificano geometricamente l elemento. Vi sono presenti, sempre sotto forma di Id, i quattro lati che formano l elemento e la loro rispettiva orientazione. L orientazione del lato è un flag: 1 se è concorde con la numerazione locale dei nodi, 0 i caso contrario, -1 se non è ancora stata settata; serve esclusivamente nel metodo problema::_build_numeration. Sono presenti tutti i nodi di quadratura per l elemento gestiti utilizzando un vettore di Point, e la loro rispettiva numerazione globale all interno dell intera mesh. Per quanto riguarda i metodi della classe, oltre ovviamente ai vari metodi standard di lettura, troviamo, come per la classe Edge, alcuni metodi di scrittura, utili in fase di creazione degli enti geometrici e loverloading dell operatore di uguaglianza =. 3.4 Classe Matrix La classe Matrix implementa matrici sparse nel formato COOrdinate. class Matrix{ Cont A; Essa memorizza esclusivamente le coppie (i, j) e il relativo elemento della matrice a ij. In particolare le coppie, che rappresentano la posizione dell elemento a ij all interno della matrice, sono definite come pair di interi strettamente positivi; questo permette un controllo implicito sui valori in ingresso.

APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI

APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI Indice 1 Le frazioni algebriche 1.1 Il minimo comune multiplo e il Massimo Comun Divisore fra polinomi........ 1. Le frazioni algebriche....................................

Dettagli

LE FUNZIONI A DUE VARIABILI

LE FUNZIONI A DUE VARIABILI Capitolo I LE FUNZIONI A DUE VARIABILI In questo primo capitolo introduciamo alcune definizioni di base delle funzioni reali a due variabili reali. Nel seguito R denoterà l insieme dei numeri reali mentre

Dettagli

Documentazione esterna al software matematico sviluppato con MatLab

Documentazione esterna al software matematico sviluppato con MatLab Documentazione esterna al software matematico sviluppato con MatLab Algoritmi Metodo di Gauss-Seidel con sovrarilassamento Metodo delle Secanti Metodo di Newton Studente Amelio Francesco 556/00699 Anno

Dettagli

Capitolo 2. Operazione di limite

Capitolo 2. Operazione di limite Capitolo 2 Operazione di ite In questo capitolo vogliamo occuparci dell operazione di ite, strumento indispensabile per scoprire molte proprietà delle funzioni. D ora in avanti riguarderemo i domini A

Dettagli

Esponenziali elogaritmi

Esponenziali elogaritmi Esponenziali elogaritmi Potenze ad esponente reale Ricordiamo che per un qualsiasi numero razionale m n prendere n>0) si pone a m n = n a m (in cui si può sempre a patto che a sia un numero reale positivo.

Dettagli

Dimensione di uno Spazio vettoriale

Dimensione di uno Spazio vettoriale Capitolo 4 Dimensione di uno Spazio vettoriale 4.1 Introduzione Dedichiamo questo capitolo ad un concetto fondamentale in algebra lineare: la dimensione di uno spazio vettoriale. Daremo una definizione

Dettagli

4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0

4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0 Rappresentazione dei numeri I numeri che siamo abituati ad utilizzare sono espressi utilizzando il sistema di numerazione decimale, che si chiama così perché utilizza 0 cifre (0,,2,3,4,5,6,7,8,9). Si dice

Dettagli

4. Operazioni elementari per righe e colonne

4. Operazioni elementari per righe e colonne 4. Operazioni elementari per righe e colonne Sia K un campo, e sia A una matrice m n a elementi in K. Una operazione elementare per righe sulla matrice A è una operazione di uno dei seguenti tre tipi:

Dettagli

Elementi Finiti: stime d errore e adattività della griglia

Elementi Finiti: stime d errore e adattività della griglia Elementi Finiti: stime d errore e adattività della griglia Elena Gaburro Università degli studi di Verona Master s Degree in Mathematics and Applications 05 giugno 2013 Elena Gaburro (Università di Verona)

Dettagli

EQUAZIONI DIFFERENZIALI. 1. Trovare tutte le soluzioni delle equazioni differenziali: (a) x = x 2 log t (d) x = e t x log x (e) y = y2 5y+6

EQUAZIONI DIFFERENZIALI. 1. Trovare tutte le soluzioni delle equazioni differenziali: (a) x = x 2 log t (d) x = e t x log x (e) y = y2 5y+6 EQUAZIONI DIFFERENZIALI.. Trovare tutte le soluzioni delle equazioni differenziali: (a) x = x log t (d) x = e t x log x (e) y = y 5y+6 (f) y = ty +t t +y (g) y = y (h) xy = y (i) y y y = 0 (j) x = x (k)

Dettagli

Controlli Automatici T. Trasformata di Laplace e Funzione di trasferimento. Parte 3 Aggiornamento: Settembre 2010. Prof. L.

Controlli Automatici T. Trasformata di Laplace e Funzione di trasferimento. Parte 3 Aggiornamento: Settembre 2010. Prof. L. Parte 3 Aggiornamento: Settembre 2010 Parte 3, 1 Trasformata di Laplace e Funzione di trasferimento Prof. Lorenzo Marconi DEIS-Università di Bologna Tel. 051 2093788 Email: lmarconi@deis.unibo.it URL:

Dettagli

Matematica 1 - Corso di Laurea in Ingegneria Meccanica

Matematica 1 - Corso di Laurea in Ingegneria Meccanica Matematica 1 - Corso di Laurea in Ingegneria Meccanica Esercitazione su massimi e minimi vincolati 9 dicembre 005 Esercizio 1. Considerare l insieme C = {(x,y) R : (x + y ) = x } e dire se è una curva

Dettagli

Corso di Matematica per la Chimica

Corso di Matematica per la Chimica Dott.ssa Maria Carmela De Bonis a.a. 203-4 I sistemi lineari Generalità sui sistemi lineari Molti problemi dell ingegneria, della fisica, della chimica, dell informatica e dell economia, si modellizzano

Dettagli

I sistemi di numerazione

I sistemi di numerazione I sistemi di numerazione 01-INFORMAZIONE E SUA RAPPRESENTAZIONE Sia dato un insieme finito di caratteri distinti, che chiameremo alfabeto. Utilizzando anche ripetutamente caratteri di un alfabeto, si possono

Dettagli

LEZIONE 23. Esempio 23.1.3. Si consideri la matrice (si veda l Esempio 22.2.5) A = 1 2 2 3 3 0

LEZIONE 23. Esempio 23.1.3. Si consideri la matrice (si veda l Esempio 22.2.5) A = 1 2 2 3 3 0 LEZIONE 23 231 Diagonalizzazione di matrici Abbiamo visto nella precedente lezione che, in generale, non è immediato che, data una matrice A k n,n con k = R, C, esista sempre una base costituita da suoi

Dettagli

CAPITOLO 16 SUCCESSIONI E SERIE DI FUNZIONI

CAPITOLO 16 SUCCESSIONI E SERIE DI FUNZIONI CAPITOLO 16 SUCCESSIONI E SERIE DI FUNZIONI Abbiamo studiato successioni e serie numeriche, ora vogliamo studiare successioni e serie di funzioni. Dato un insieme A R, chiamiamo successione di funzioni

Dettagli

Parte 2. Determinante e matrice inversa

Parte 2. Determinante e matrice inversa Parte. Determinante e matrice inversa A. Savo Appunti del Corso di Geometria 013-14 Indice delle sezioni 1 Determinante di una matrice, 1 Teorema di Cramer (caso particolare), 3 3 Determinante di una matrice

Dettagli

Corrispondenze e funzioni

Corrispondenze e funzioni Corrispondenze e funzioni L attività fondamentale della mente umana consiste nello stabilire corrispondenze e relazioni tra oggetti; è anche per questo motivo che il concetto di corrispondenza è uno dei

Dettagli

Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora:

Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora: Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora: G.C.D.( a d, b d ) = 1 Sono state introdotte a lezione due definizioni importanti che ricordiamo: Definizione

Dettagli

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo. DALLE PESATE ALL ARITMETICA FINITA IN BASE 2 Si è trovato, partendo da un problema concreto, che con la base 2, utilizzando alcune potenze della base, operando con solo addizioni, posso ottenere tutti

Dettagli

LE SUCCESSIONI 1. COS E UNA SUCCESSIONE

LE SUCCESSIONI 1. COS E UNA SUCCESSIONE LE SUCCESSIONI 1. COS E UNA SUCCESSIONE La sequenza costituisce un esempio di SUCCESSIONE. Ecco un altro esempio di successione: Una successione è dunque una sequenza infinita di numeri reali (ma potrebbe

Dettagli

Interpolazione ed approssimazione di funzioni

Interpolazione ed approssimazione di funzioni Interpolazione ed approssimazione di funzioni Lucia Gastaldi Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ 9 novembre 2007 Outline 1 Polinomi Valutazione di un polinomio Algoritmo di Horner

Dettagli

Appunti sulla Macchina di Turing. Macchina di Turing

Appunti sulla Macchina di Turing. Macchina di Turing Macchina di Turing Una macchina di Turing è costituita dai seguenti elementi (vedi fig. 1): a) una unità di memoria, detta memoria esterna, consistente in un nastro illimitato in entrambi i sensi e suddiviso

Dettagli

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. Algoritmi 1 Sommario Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. 2 Informatica Nome Informatica=informazione+automatica. Definizione Scienza che si occupa dell

Dettagli

Come visto precedentemente l equazione integro differenziale rappresentativa dell equilibrio elettrico di un circuito RLC è la seguente: 1 = (1)

Come visto precedentemente l equazione integro differenziale rappresentativa dell equilibrio elettrico di un circuito RLC è la seguente: 1 = (1) Transitori Analisi nel dominio del tempo Ricordiamo che si definisce transitorio il periodo di tempo che intercorre nel passaggio, di un sistema, da uno stato energetico ad un altro, non è comunque sempre

Dettagli

INTEGRALI DEFINITI. Tale superficie viene detta trapezoide e la misura della sua area si ottiene utilizzando il calcolo di un integrale definito.

INTEGRALI DEFINITI. Tale superficie viene detta trapezoide e la misura della sua area si ottiene utilizzando il calcolo di un integrale definito. INTEGRALI DEFINITI Sia nel campo scientifico che in quello tecnico si presentano spesso situazioni per affrontare le quali è necessario ricorrere al calcolo dell integrale definito. Vi sono infatti svariati

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/ 18 gennaio 2008 Outline 1 M-file di tipo Script e Function Script Function 2 Costrutti di programmazione

Dettagli

Programmazione dinamica

Programmazione dinamica Capitolo 6 Programmazione dinamica 6.4 Il problema della distanza di edit tra due stringhe x e y chiede di calcolare il minimo numero di operazioni su singoli caratteri (inserimento, cancellazione e sostituzione)

Dettagli

risulta (x) = 1 se x < 0.

risulta (x) = 1 se x < 0. Questo file si pone come obiettivo quello di mostrarvi come lo studio di una funzione reale di una variabile reale, nella cui espressione compare un qualche valore assoluto, possa essere svolto senza necessariamente

Dettagli

Lezione 9: Cambio di base

Lezione 9: Cambio di base Lezione 9: Cambio di base In questa lezione vogliamo affrontare uno degli argomenti piu ostici per lo studente e cioè il cambio di base all interno di uno spazio vettoriale, inoltre cercheremo di capire

Dettagli

Matematica e Statistica

Matematica e Statistica Matematica e Statistica Prova d esame (0/07/03) Università di Verona - Laurea in Biotecnologie - A.A. 0/3 Matematica e Statistica Prova di MATEMATICA (0/07/03) Università di Verona - Laurea in Biotecnologie

Dettagli

Capitolo 13: L offerta dell impresa e il surplus del produttore

Capitolo 13: L offerta dell impresa e il surplus del produttore Capitolo 13: L offerta dell impresa e il surplus del produttore 13.1: Introduzione L analisi dei due capitoli precedenti ha fornito tutti i concetti necessari per affrontare l argomento di questo capitolo:

Dettagli

INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI

INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI Prima di riuscire a scrivere un programma, abbiamo bisogno di conoscere un metodo risolutivo, cioè un metodo che a partire dai dati di ingresso fornisce i risultati attesi.

Dettagli

Approssimazione polinomiale di funzioni e dati

Approssimazione polinomiale di funzioni e dati Approssimazione polinomiale di funzioni e dati Approssimare una funzione f significa trovare una funzione f di forma più semplice che possa essere usata al posto di f. Questa strategia è utilizzata nell

Dettagli

MATEMATICA DEL DISCRETO elementi di teoria dei grafi. anno acc. 2009/2010

MATEMATICA DEL DISCRETO elementi di teoria dei grafi. anno acc. 2009/2010 elementi di teoria dei grafi anno acc. 2009/2010 Grafi semplici Un grafo semplice G è una coppia ordinata (V(G), L(G)), ove V(G) è un insieme finito e non vuoto di elementi detti vertici o nodi di G, mentre

Dettagli

Ottimizazione vincolata

Ottimizazione vincolata Ottimizazione vincolata Ricordiamo alcuni risultati provati nella scheda sulla Teoria di Dini per una funzione F : R N+M R M di classe C 1 con (x 0, y 0 ) F 1 (a), a = (a 1,, a M ), punto in cui vale l

Dettagli

Sistemi Informativi Territoriali. Map Algebra

Sistemi Informativi Territoriali. Map Algebra Paolo Mogorovich Sistemi Informativi Territoriali Appunti dalle lezioni Map Algebra Cod.735 - Vers.E57 1 Definizione di Map Algebra 2 Operatori locali 3 Operatori zonali 4 Operatori focali 5 Operatori

Dettagli

Esercizi su. Funzioni

Esercizi su. Funzioni Esercizi su Funzioni ๒ Varie Tracce extra Sul sito del corso ๓ Esercizi funz_max.cc funz_fattoriale.cc ๔ Documentazione Il codice va documentato (commentato) Leggibilità Riduzione degli errori Manutenibilità

Dettagli

3 GRAFICI DI FUNZIONI

3 GRAFICI DI FUNZIONI 3 GRAFICI DI FUNZIONI Particolari sottoinsiemi di R che noi studieremo sono i grafici di funzioni. Il grafico di una funzione f (se non è specificato il dominio di definizione) è dato da {(x, y) : x dom

Dettagli

CONCETTO DI LIMITE DI UNA FUNZIONE REALE

CONCETTO DI LIMITE DI UNA FUNZIONE REALE CONCETTO DI LIMITE DI UNA FUNZIONE REALE Il limite di una funzione è uno dei concetti fondamentali dell'analisi matematica. Tramite questo concetto viene formalizzata la nozione di funzione continua e

Dettagli

Lezione 8. La macchina universale

Lezione 8. La macchina universale Lezione 8 Algoritmi La macchina universale Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni su i dati digitale= l informazione

Dettagli

Integrazione numerica

Integrazione numerica Integrazione numerica Lucia Gastaldi Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ Lezione 6-20-26 ottobre 2009 Indice 1 Formule di quadratura semplici e composite Formule di quadratura

Dettagli

2.1 Definizione di applicazione lineare. Siano V e W due spazi vettoriali su R. Un applicazione

2.1 Definizione di applicazione lineare. Siano V e W due spazi vettoriali su R. Un applicazione Capitolo 2 MATRICI Fra tutte le applicazioni su uno spazio vettoriale interessa esaminare quelle che mantengono la struttura di spazio vettoriale e che, per questo, vengono dette lineari La loro importanza

Dettagli

Prof.ssa Paola Vicard

Prof.ssa Paola Vicard Questa nota consiste perlopiù nella traduzione (con alcune integrazioni) da Descriptive statistics di J. Shalliker e C. Ricketts, 2000, University of Plymouth Consideriamo i dati nel file esercizio10_dati.xls.

Dettagli

Parte 3. Rango e teorema di Rouché-Capelli

Parte 3. Rango e teorema di Rouché-Capelli Parte 3. Rango e teorema di Rouché-Capelli A. Savo Appunti del Corso di Geometria 203-4 Indice delle sezioni Rango di una matrice, 2 Teorema degli orlati, 3 3 Calcolo con l algoritmo di Gauss, 6 4 Matrici

Dettagli

Lezioni di Matematica 1 - I modulo

Lezioni di Matematica 1 - I modulo Lezioni di Matematica 1 - I modulo Luciano Battaia 16 ottobre 2008 Luciano Battaia - http://www.batmath.it Matematica 1 - I modulo. Lezione del 16/10/2008 1 / 13 L introduzione dei numeri reali si può

Dettagli

Matematica generale CTF

Matematica generale CTF Successioni numeriche 19 agosto 2015 Definizione di successione Monotonìa e limitatezza Forme indeterminate Successioni infinitesime Comportamento asintotico Criterio del rapporto per le successioni Definizione

Dettagli

1 Serie di Taylor di una funzione

1 Serie di Taylor di una funzione Analisi Matematica 2 CORSO DI STUDI IN SMID CORSO DI ANALISI MATEMATICA 2 CAPITOLO 7 SERIE E POLINOMI DI TAYLOR Serie di Taylor di una funzione. Definizione di serie di Taylor Sia f(x) una funzione definita

Dettagli

ESERCIZI DI ALGEBRA LINEARE E GEOMETRIA

ESERCIZI DI ALGEBRA LINEARE E GEOMETRIA ESERCIZI DI ALGEBRA LINEARE E GEOMETRIA Francesco Bottacin Padova, 24 febbraio 2012 Capitolo 1 Algebra Lineare 1.1 Spazi e sottospazi vettoriali Esercizio 1.1. Sia U il sottospazio di R 4 generato dai

Dettagli

f(x) = 1 x. Il dominio di questa funzione è il sottoinsieme proprio di R dato da

f(x) = 1 x. Il dominio di questa funzione è il sottoinsieme proprio di R dato da Data una funzione reale f di variabile reale x, definita su un sottoinsieme proprio D f di R (con questo voglio dire che il dominio di f è un sottoinsieme di R che non coincide con tutto R), ci si chiede

Dettagli

~ Copyright Ripetizionando - All rights reserved ~ http://ripetizionando.wordpress.com STUDIO DI FUNZIONE

~ Copyright Ripetizionando - All rights reserved ~ http://ripetizionando.wordpress.com STUDIO DI FUNZIONE STUDIO DI FUNZIONE Passaggi fondamentali Per effettuare uno studio di funzione completo, che non lascia quindi margine a una quasi sicuramente errata inventiva, sono necessari i seguenti 7 passaggi: 1.

Dettagli

Esempi di algoritmi. Lezione III

Esempi di algoritmi. Lezione III Esempi di algoritmi Lezione III Scopo della lezione Implementare da zero algoritmi di media complessità. Verificare la correttezza di un algoritmo eseguendolo a mano. Imparare a valutare le prestazioni

Dettagli

Analisi e diagramma di Pareto

Analisi e diagramma di Pareto Analisi e diagramma di Pareto L'analisi di Pareto è una metodologia statistica utilizzata per individuare i problemi più rilevanti nella situazione in esame e quindi le priorità di intervento. L'obiettivo

Dettagli

2 Argomenti introduttivi e generali

2 Argomenti introduttivi e generali 1 Note Oltre agli esercizi di questa lista si consiglia di svolgere quelli segnalati o assegnati sul registro e genericamente quelli presentati dal libro come esercizio o come esempio sugli argomenti svolti

Dettagli

Studente: SANTORO MC. Matricola : 528

Studente: SANTORO MC. Matricola : 528 CORSO di LAUREA in INFORMATICA Corso di CALCOLO NUMERICO a.a. 2004-05 Studente: SANTORO MC. Matricola : 528 PROGETTO PER L ESAME 1. Sviluppare una versione dell algoritmo di Gauss per sistemi con matrice

Dettagli

ANALISI NUMERICA. Elementi finiti bidimensionali. a.a. 2014 2015. Maria Lucia Sampoli. ANALISI NUMERICA p.1/23

ANALISI NUMERICA. Elementi finiti bidimensionali. a.a. 2014 2015. Maria Lucia Sampoli. ANALISI NUMERICA p.1/23 ANALISI NUMERICA Elementi finiti bidimensionali a.a. 2014 2015 Maria Lucia Sampoli ANALISI NUMERICA p.1/23 Elementi Finiti 2D Consideriamo 3 aspetti per la descrizione di elementi finiti bidimensionali:

Dettagli

Consideriamo due polinomi

Consideriamo due polinomi Capitolo 3 Il luogo delle radici Consideriamo due polinomi N(z) = (z z 1 )(z z 2 )... (z z m ) D(z) = (z p 1 )(z p 2 )... (z p n ) della variabile complessa z con m < n. Nelle problematiche connesse al

Dettagli

Le equazioni. Diapositive riassemblate e rielaborate da prof. Antonio Manca da materiali offerti dalla rete.

Le equazioni. Diapositive riassemblate e rielaborate da prof. Antonio Manca da materiali offerti dalla rete. Le equazioni Diapositive riassemblate e rielaborate da prof. Antonio Manca da materiali offerti dalla rete. Definizione e caratteristiche Chiamiamo equazione l uguaglianza tra due espressioni algebriche,

Dettagli

L espressione torna invece sempre vera (quindi la soluzione originale) se cambiamo contemporaneamente il verso: 1 < 0.

L espressione torna invece sempre vera (quindi la soluzione originale) se cambiamo contemporaneamente il verso: 1 < 0. EQUAZIONI E DISEQUAZIONI Le uguaglianze fra espressioni numeriche si chiamano equazioni. Cercare le soluzioni dell equazione vuol dire cercare quelle combinazioni delle lettere che vi compaiono che la

Dettagli

Rette e curve, piani e superfici

Rette e curve, piani e superfici Rette e curve piani e superfici ) dicembre 2 Scopo di questo articolo è solo quello di proporre uno schema riepilogativo che metta in luce le caratteristiche essenziali delle equazioni di rette e curve

Dettagli

Lezione 10: Il problema del consumatore: Preferenze e scelta ottimale

Lezione 10: Il problema del consumatore: Preferenze e scelta ottimale Corso di Scienza Economica (Economia Politica) prof. G. Di Bartolomeo Lezione 10: Il problema del consumatore: Preferenze e scelta ottimale Facoltà di Scienze della Comunicazione Università di Teramo Scelta

Dettagli

Corso di Calcolo Numerico

Corso di Calcolo Numerico Corso di Calcolo Numerico Dottssa MC De Bonis Università degli Studi della Basilicata, Potenza Facoltà di Ingegneria Corso di Laurea in Ingegneria Meccanica Corso di Calcolo Numerico - Dottssa MC De Bonis

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T3 1-Sottoprogrammi 1 Prerequisiti Tecnica top-down Programmazione elementare 2 1 Introduzione Lo scopo di questa Unità è utilizzare la metodologia di progettazione top-down

Dettagli

1 Applicazioni Lineari tra Spazi Vettoriali

1 Applicazioni Lineari tra Spazi Vettoriali 1 Applicazioni Lineari tra Spazi Vettoriali Definizione 1 (Applicazioni lineari) Si chiama applicazione lineare una applicazione tra uno spazio vettoriale ed uno spazio vettoriale sul campo tale che "!$%!

Dettagli

Quando troncare uno sviluppo in serie di Taylor

Quando troncare uno sviluppo in serie di Taylor Quando troncare uno sviluppo in serie di Taylor Marco Robutti October 13, 2014 Lo sviluppo in serie di Taylor di una funzione è uno strumento matematico davvero molto utile, e viene spesso utilizzato in

Dettagli

Metodi Numerici per Equazioni Ellittiche

Metodi Numerici per Equazioni Ellittiche Metodi Numerici per Equazioni Ellittiche Vediamo ora di descrivere una tecnica per la risoluzione numerica della più semplice equazione ellittica lineare, l Equazione di Laplace: u xx + u yy = 0, (x, y)

Dettagli

Massimi e minimi vincolati di funzioni in due variabili

Massimi e minimi vincolati di funzioni in due variabili Massimi e minimi vincolati di funzioni in due variabili I risultati principali della teoria dell ottimizzazione, il Teorema di Fermat in due variabili e il Test dell hessiana, si applicano esclusivamente

Dettagli

STUDIO DI UNA FUNZIONE

STUDIO DI UNA FUNZIONE STUDIO DI UNA FUNZIONE OBIETTIVO: Data l equazione Y = f(x) di una funzione a variabili reali (X R e Y R), studiare l andamento del suo grafico. PROCEDIMENTO 1. STUDIO DEL DOMINIO (CAMPO DI ESISTENZA)

Dettagli

Metodi Stocastici per la Finanza

Metodi Stocastici per la Finanza Metodi Stocastici per la Finanza Tiziano Vargiolu vargiolu@math.unipd.it 1 1 Università degli Studi di Padova Anno Accademico 2011-2012 Lezione 6 Indice 1 Il metodo bootstrap 2 Esercitazione 3 Interpolazione

Dettagli

13. Campi vettoriali

13. Campi vettoriali 13. Campi vettoriali 1 Il campo di velocità di un fluido Il concetto di campo in fisica non è limitato ai fenomeni elettrici. In generale il valore di una grandezza fisica assegnato per ogni punto dello

Dettagli

Il concetto di valore medio in generale

Il concetto di valore medio in generale Il concetto di valore medio in generale Nella statistica descrittiva si distinguono solitamente due tipi di medie: - le medie analitiche, che soddisfano ad una condizione di invarianza e si calcolano tenendo

Dettagli

FUNZIONI / ESERCIZI SVOLTI

FUNZIONI / ESERCIZI SVOLTI ANALISI MATEMATICA I - A.A. 0/0 FUNZIONI / ESERCIZI SVOLTI ESERCIZIO. Data la funzione f () = determinare l insieme f (( +)). Svolgimento. Poiché f (( +)) = { dom f : f () ( +)} = { dom f : f () > } si

Dettagli

Politecnico di Milano. Facoltà di Ingegneria Industriale. Corso di Analisi e Geometria 2. Sezione D-G. (Docente: Federico Lastaria).

Politecnico di Milano. Facoltà di Ingegneria Industriale. Corso di Analisi e Geometria 2. Sezione D-G. (Docente: Federico Lastaria). Politecnico di Milano. Facoltà di Ingegneria Industriale. Corso di Analisi e Geometria 2. Sezione D-G. (Docente: Federico Lastaria). Aprile 20 Indice Serie numeriche. Serie convergenti, divergenti, indeterminate.....................

Dettagli

11) convenzioni sulla rappresentazione grafica delle soluzioni

11) convenzioni sulla rappresentazione grafica delle soluzioni 2 PARAGRAFI TRATTATI 1)La funzione esponenziale 2) grafici della funzione esponenziale 3) proprietá delle potenze 4) i logaritmi 5) grafici della funzione logaritmica 6) principali proprietá dei logaritmi

Dettagli

Convertitori numerici in Excel

Convertitori numerici in Excel ISTITUTO DI ISTRUZIONE SUPERIORE G. M. ANGIOY CARBONIA Convertitori numerici in Excel Prof. G. Ciaschetti Come attività di laboratorio, vogliamo realizzare dei convertitori numerici con Microsoft Excel

Dettagli

e-dva - eni-depth Velocity Analysis

e-dva - eni-depth Velocity Analysis Lo scopo dell Analisi di Velocità di Migrazione (MVA) è quello di ottenere un modello della velocità nel sottosuolo che abbia dei tempi di riflessione compatibili con quelli osservati nei dati. Ciò significa

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 Sistemi di Numerazione Sistema decimale La

Dettagli

Logaritmi ed esponenziali

Logaritmi ed esponenziali Logaritmi ed esponenziali definizioni, proprietà ITIS Feltrinelli anno scolastico 2007-2008 A cosa servono i logaritmi I logaritmi rendono possibile trasformare prodotti in somme, quozienti in differenze,

Dettagli

Soluzione di equazioni quadratiche

Soluzione di equazioni quadratiche Soluzione di equazioni quadratiche Soluzione sulla Retta Algebrica Inseriamo sulla Retta Algebrica le seguenti espressioni polinomiali x e x 3 e cerchiamo di individuare i valori di x per i quali i punti

Dettagli

Esercizi su lineare indipendenza e generatori

Esercizi su lineare indipendenza e generatori Esercizi su lineare indipendenza e generatori Per tutto il seguito, se non specificato esplicitamente K indicherà un campo e V uno spazio vettoriale su K Cose da ricordare Definizione Dei vettori v,,v

Dettagli

Per lo svolgimento del corso risulta particolarmente utile considerare l insieme

Per lo svolgimento del corso risulta particolarmente utile considerare l insieme 1. L insieme R. Per lo svolgimento del corso risulta particolarmente utile considerare l insieme R = R {, + }, detto anche retta reale estesa, che si ottiene aggiungendo all insieme dei numeri reali R

Dettagli

Applicazioni lineari

Applicazioni lineari Applicazioni lineari Esempi di applicazioni lineari Definizione. Se V e W sono spazi vettoriali, una applicazione lineare è una funzione f: V W tale che, per ogni v, w V e per ogni a, b R si abbia f(av

Dettagli

Per studio di funzione intendiamo un insieme di procedure che hanno lo scopo di analizzare le proprietà di una funzione f ( x) R R

Per studio di funzione intendiamo un insieme di procedure che hanno lo scopo di analizzare le proprietà di una funzione f ( x) R R Studio di funzione Per studio di funzione intendiamo un insieme di procedure che hanno lo scopo di analizzare le proprietà di una funzione f ( x) R R : allo scopo di determinarne le caratteristiche principali.

Dettagli

Analisi sensitività. Strumenti per il supporto alle decisioni nel processo di Valutazione d azienda

Analisi sensitività. Strumenti per il supporto alle decisioni nel processo di Valutazione d azienda Analisi sensitività. Strumenti per il supporto alle decisioni nel processo di Valutazione d azienda Premessa Con l analisi di sensitività il perito valutatore elabora un range di valori invece di un dato

Dettagli

Proof. Dimostrazione per assurdo. Consideriamo l insieme complementare di P nell insieme

Proof. Dimostrazione per assurdo. Consideriamo l insieme complementare di P nell insieme G Pareschi Principio di induzione Il Principio di Induzione (che dovreste anche avere incontrato nel Corso di Analisi I) consente di dimostrare Proposizioni il cui enunciato è in funzione di un numero

Dettagli

Transitori del primo ordine

Transitori del primo ordine Università di Ferrara Corso di Elettrotecnica Transitori del primo ordine Si consideri il circuito in figura, composto da un generatore ideale di tensione, una resistenza ed una capacità. I tre bipoli

Dettagli

2. Leggi finanziarie di capitalizzazione

2. Leggi finanziarie di capitalizzazione 2. Leggi finanziarie di capitalizzazione Si chiama legge finanziaria di capitalizzazione una funzione atta a definire il montante M(t accumulato al tempo generico t da un capitale C: M(t = F(C, t C t M

Dettagli

Si sa che la via più breve tra due punti è la linea retta. Ma vi siete mai chiesti, Qual è la via più breve tra tre punti? o tra quattro punti?

Si sa che la via più breve tra due punti è la linea retta. Ma vi siete mai chiesti, Qual è la via più breve tra tre punti? o tra quattro punti? Dov'è Moriart? Cerchiamo la via più breve con Mathcad Potete determinare la distanza più breve da tre punti e trovare Moriart? Si sa che la via più breve tra due punti è la linea retta. Ma vi siete mai

Dettagli

Ottimizzazione delle interrogazioni (parte I)

Ottimizzazione delle interrogazioni (parte I) Ottimizzazione delle interrogazioni I Basi di Dati / Complementi di Basi di Dati 1 Ottimizzazione delle interrogazioni (parte I) Angelo Montanari Dipartimento di Matematica e Informatica Università di

Dettagli

4 Dispense di Matematica per il biennio dell Istituto I.S.I.S. Gaetano Filangieri di Frattamaggiore EQUAZIONI FRATTE E SISTEMI DI EQUAZIONI

4 Dispense di Matematica per il biennio dell Istituto I.S.I.S. Gaetano Filangieri di Frattamaggiore EQUAZIONI FRATTE E SISTEMI DI EQUAZIONI 119 4 Dispense di Matematica per il biennio dell Istituto I.S.I.S. Gaetano Filangieri di Frattamaggiore EQUAZIONI FRATTE E SISTEMI DI EQUAZIONI Indice degli Argomenti: TEMA N. 1 : INSIEMI NUMERICI E CALCOLO

Dettagli

Esercizi svolti. 1. Si consideri la funzione f(x) = 4 x 2. a) Verificare che la funzione F(x) = x 2 4 x2 + 2 arcsin x è una primitiva di

Esercizi svolti. 1. Si consideri la funzione f(x) = 4 x 2. a) Verificare che la funzione F(x) = x 2 4 x2 + 2 arcsin x è una primitiva di Esercizi svolti. Si consideri la funzione f() 4. a) Verificare che la funzione F() 4 + arcsin è una primitiva di f() sull intervallo (, ). b) Verificare che la funzione G() 4 + arcsin π è la primitiva

Dettagli

CONTINUITÀ E DERIVABILITÀ Esercizi proposti. 1. Determinare lim M(sinx) (M(t) denota la mantissa di t)

CONTINUITÀ E DERIVABILITÀ Esercizi proposti. 1. Determinare lim M(sinx) (M(t) denota la mantissa di t) CONTINUITÀ E DERIVABILITÀ Esercizi proposti 1. Determinare lim M(sin) (M(t) denota la mantissa di t) kπ/ al variare di k in Z. Ove tale limite non esista, discutere l esistenza dei limiti laterali. Identificare

Dettagli

L analisi dei dati. Capitolo 4. 4.1 Il foglio elettronico

L analisi dei dati. Capitolo 4. 4.1 Il foglio elettronico Capitolo 4 4.1 Il foglio elettronico Le più importanti operazioni richieste dall analisi matematica dei dati sperimentali possono essere agevolmente portate a termine da un comune foglio elettronico. Prenderemo

Dettagli

Note su quicksort per ASD 2010-11 (DRAFT)

Note su quicksort per ASD 2010-11 (DRAFT) Note su quicksort per ASD 010-11 (DRAFT) Nicola Rebagliati 7 dicembre 010 1 Quicksort L algoritmo di quicksort è uno degli algoritmi più veloci in pratica per il riordinamento basato su confronti. L idea

Dettagli

ESEMPIO 1: eseguire il complemento a 10 di 765

ESEMPIO 1: eseguire il complemento a 10 di 765 COMPLEMENTO A 10 DI UN NUMERO DECIMALE Sia dato un numero N 10 in base 10 di n cifre. Il complemento a 10 di tale numero (N ) si ottiene sottraendo il numero stesso a 10 n. ESEMPIO 1: eseguire il complemento

Dettagli

Teoria delle code. Sistemi stazionari: M/M/1 M/M/1/K M/M/S

Teoria delle code. Sistemi stazionari: M/M/1 M/M/1/K M/M/S Teoria delle code Sistemi stazionari: M/M/1 M/M/1/K M/M/S Fabio Giammarinaro 04/03/2008 Sommario INTRODUZIONE... 3 Formule generali di e... 3 Leggi di Little... 3 Cosa cerchiamo... 3 Legame tra N e le

Dettagli

Vademecum studio funzione

Vademecum studio funzione Vademecum studio funzione Campo di Esistenza di una funzione o dominio: Studiare una funzione significa determinare gli elementi caratteristici che ci permettono di disegnarne il grafico, a partire dalla

Dettagli

( x) ( x) 0. Equazioni irrazionali

( x) ( x) 0. Equazioni irrazionali Equazioni irrazionali Definizione: si definisce equazione irrazionale un equazione in cui compaiono uno o più radicali contenenti l incognita. Esempio 7 Ricordiamo quanto visto sulle condizioni di esistenza

Dettagli

La distribuzione Normale. La distribuzione Normale

La distribuzione Normale. La distribuzione Normale La Distribuzione Normale o Gaussiana è la distribuzione più importante ed utilizzata in tutta la statistica La curva delle frequenze della distribuzione Normale ha una forma caratteristica, simile ad una

Dettagli

Energia potenziale elettrica e potenziale. In queste pagine R indicherà una regione in cui è presente un campo elettrostatico.

Energia potenziale elettrica e potenziale. In queste pagine R indicherà una regione in cui è presente un campo elettrostatico. Energia potenziale elettrica e potenziale 0. Premessa In queste pagine R indicherà una regione in cui è presente un campo elettrostatico. 1. La forza elettrostatica è conservativa Una o più cariche ferme

Dettagli