tracce A - Dipartimento di Matematica

annuncio pubblicitario
LC
Laurea Magistrale in Matematica Pura ed Applicata
A.A. 2014-2015
Tracce d’esame
Traccia 1
Considerare il problema:
{
−αu′′ (x) + βu′ (x) + γu(x) = f (x), a < x < b
u(a) = 0, u(b) = 0
con f ∈ L2 (a, b), α, γ > 0 e β ∈ IR .
i) Se ne scriva la formulazione debole ossia:
trovare u ∈ V
: a(u, v) = F (v), ∀v ∈ V,
specificando opportunamente a, F, V .
ii) Scrivere un programma Matlab per il calcolo della soluzione approssimata uh secondo lo
schema sopra determinato, utilizzando come spazio di discretizzazione lo spazio Xh1 :
Vh = {vh ∈ Xh1 : vh (a) = vh (b) = 0},
Xh1 = {vh ∈ Vh : vh |[xi−1 ,xi ] ∈ IP1 , ∀i = 1, 2, . . . , N + 1},
a = x0 < x1 < · · · < xN +1 = b.
iii) Testare il programma costruito per diversi insiemi di dati e diversi passi di discretizzazione,
analizzando il comportamento dell’errore in norma L2 (a, b). Traccia:
iii.a) calcolare la norma L2 dell’errore u − uh in corrispondenza di N + 1 = 10, 20, 40, 80,
per ciascuno dei valori di N suddetti riportare in uno stesso grafico la soluzione esatta
u e quella approssimata uh ;
iii.b) stabilire quale relazione intercorre fra ∥u − uh ∥L2 (a,b) e h;
iii.c) tracciare il grafico della norma dell’errore rispetto ad h utilizzando una scala logaritmica su entrambi gli assi (loglog)
1
Traccia 2
Considerare il problema:
{
−u′′ (x) = f (x), a < x < b
u(a) = ga ,
u(b) = gb
i) Se ne scriva la formulazione debole ossia:
trovare u ∈ V
: a(u, v) = F (v), ∀v ∈ V,
specificando opportunamente a, F, V .
ii) Scrivere un programma Matlab per il calcolo della soluzione approssimata uh secondo lo
schema sopra determinato, utilizzando come spazio di discretizzazione lo spazio Xh1 :
Vh = {vh ∈ Xh1 : vh (a) = vh (b) = 0},
Xh1 = {vh ∈ C 0 (Ω) : vh |[xi−1 ,xi ] ∈ IP1 , ∀i = 1, 2, . . . , N + 1},
a = x0 < x1 < · · · < xN +1 = b.
iii) Utilizzare il programma costruito al punto ii) con i dati a = −1, b = 1 e f (x), ga , gb in modo
che la soluzione del problema suddetto sia u(x) = x(x − 1)ex .
iv) Inserire nel codice sopra il calcolo dell’errore u − uh sia in norma L2 che in norma H 1 ,
in corrispondenza di N + 1 = 10, 20, 40, 80. Stabilire quale relazione intercorre fra ∥u −
uh ∥L2 (a,b) e h e fra ∥u − uh ∥H 1 (a,b) e h e tracciare il grafico della norma dell’errore rispetto
ad h utilizzando una scala logaritmica su entrambi gli assi (loglog).
Per ciascuno dei valori di N suddetti riportare in uno stesso grafico la soluzione esatta u
e quella approssimata uh .
Traccia 3
Considerare il problema:
{
−αu′′ (x) + γu(x) = f (x), a < x < b
u(a) = ga , u(b) = gb
con f ∈ L2 (a, b), α, γ > 0.
i) Se ne scriva la formulazione debole ossia:
trovare u ∈ V
: a(u, v) = F (v), ∀v ∈ V,
specificando opportunamente a, F, V .
ii) Considerare una discretizzazione agli elementi finiti del problema di cui al punto i) utilizzando
come spazio di discretizzazione lo spazio
Vh = {vh ∈ Xh1 : vh (a) = vh (b) = 0},
Xh1 = {vh ∈ C 0 (Ω) : vh |[xi−1 ,xi ] ∈ IP1 , ∀i = 1, 2, . . . , N + 1},
a = x0 < x1 < · · · < xN +1 = b.
2
iii) Scrivere una funzione MATLAB per calcolare la soluzione approssimata del problema secondo lo schema prima determinato. Testare il programma costruito nei seguenti casi:
iii.a) a = −1, b = 1, α = 1, γ = 6, u(x) = 10xex
iii.b) a = 1, b = 4, α = 1, γ = 1, u(x) =
2 −4
;
x cos( π2 x);
con ga , gb e f (x) ottenuti dalla soluzione esatta u(x). Analizzare il comportamento dell’errore
al diminuire di h. Traccia:
- calcolare la norma L2 dell’errore u − uh in corrispondenza di N + 1 = 10, 20, 40, 80, per
ciascuno dei valori di N suddetti riportare in uno stesso grafico la soluzione esatta u
e quella approssimata uh ;
- stabilire quale relazione intercorre fra ∥u − uh ∥L2 (a,b) e h;
- tracciare il grafico della norma dell’errore rispetto ad h utilizzando una scala logaritmica
su entrambi gli assi (loglog)
Traccia 4
Considerare il problema:
{
−αu′′ (x) + βu′ (x) = f (x), a < x < b
u(a) = 0, u(b) = 0
con f ∈ L2 (a, b), α > 0 e β ∈ IR .
i) Se ne scriva la formulazione debole ossia:
trovare u ∈ V
: a(u, v) = F (v), ∀v ∈ V,
specificando opportunamente a, F, V .
ii) Considerare una discretizzazione agli elementi finiti del problema di cui al punto i) utilizzando
come spazio di discretizzazione lo spazio
Vh = {vh ∈ Xh1 : vh (a) = vh (b) = 0},
Xh1 = {vh ∈ C 0 (Ω) : vh |[xi−1 ,xi ] ∈ IP1 , ∀i = 1, 2, . . . , N + 1},
a = x0 < x1 < · · · < xN +1 = b.
iii) Scrivere una funzione MATLAB per calcolare la soluzione approssimata del problema secondo lo schema sopra determinato.
iv) Testare il programma costruito nei 3 casi seguenti (al variare della costante k)
a = 0,
b = 1,
α = 5,
β = 10k , k = 1, 2, 3,
per diversi passi di discretizzazione analizzando:
3
f (x) ≡ 0
iv.a) il comportamento del condizionamento della matrice del sistema al diminuire del
passo h di discretizzazione.
Traccia: analizzare per ogni N + 1 = 10, 20, 40, 80 la struttura della matrice A (con
il comando spy) e determinare i valori h e κ2 (A).
Quale relazione intercorre fra h e κ2 (A)? Riportare i valori ottenuti in un grafico
cartesiano.
(Si ricorda che κ2 (A) indica il numero di condizionamento in norma 2 e per matrici
simmetriche definite positive risulta
κ2 (A) =
λmax (A)
.
λmin (A)
iv.b) L’andamento grafico della soluzione approssimata al variare della dicretizzazione.
Che differenze si osservano al variare di k?
FACOLATIVO: nel caso in cui si osservano oscillazioni della soluzione approssimante
si utilizzi la stabilizzaione upwind per rendere la soluzione stabile.
4
Traccia 5
{
−∆u = f, in Ω
u = g,
su Γ
(1)
dove Ω è un dominio del piano con Γ = ∂Ω e f ∈ L2 (Ω).
i) Utilizzare il software FreeFem++ per approssimare la soluzione del problema sopra mediante
il metodo di Galerkin con lo spazio delle lineari a tratti C 0 come spazio di approssimazione.
Testare il codice nei seguenti casi:
i.a) Ω = (0, 1)2 e u(x, y) = y cos(2πx);
i.b) Ω = {(x, y) ∈ IR2 : x2 + y 2 < 9} e u(x, y) = x2 + y 2 − 9;
dove la funzione f e il dato di bordo g possono essere ricavati dalla soluzione esatta e
analizzare l’andamento dell’errore in norma L2 per diverse discretizzazioni del bordo. Che
ordini di convergenza si ottengno per i due esempi?
ii) Utilizzare lo spazio dei polinomi quadratici IP2 con continuità C 0 per approssimare la
soluzione di problemi i.a) e i.b) ed analizzare l’andamento dell’errore in norma L2 per
diverse discretizzazioni del bordo. Che ordini di convergenza si ottengno in questo caso?
Commentare i risultati.
Traccia 6
Sia dato il seguente problema in Ω ⊂ IR2 :
{
−ε∆u + b · ∇u = f, in Ω
u = g,
su Γ
dove Ω è un dominio del piano con Γ = ∂Ω, b ∈ IR2 e f ∈ L2 (Ω).
i) Dare la formulazione debole al problema sopra nel caso di condizioni al bordo di Dirichlet
omogenee (g ≡ 0).
ii) Considerare il caso in cui
Ω = (0, 1)2
ε = 1, b = 10k [cos(θ), sin(θ)]T , θ =
{
g =
π
, k ∈ IN,
6
f (x) ≡ 0;
1, x = 0;
0, altrove;
e utilizzare il software FreeFem++ per costruire la soluzione approssimata del problema
mediante il metodo di Galerkin con lo spazio delle lineari a tratti C 0 come spazio di
approssimazione.
iii) Testare il codice costruito su diverse discretizzazioni del bordo, facendo variare il valore
della costante k, (ad esempio k = 1, 2, 3, ...).
iv) Rappresentare le soluzioni ottenute in maniera grafica e commentare i rusultati.
5
Scarica