Matematica e statistica Versione didascalica: parte 3 Sito web del corso Docente: Prof. Sergio...
-
Upload
annetta-de-simone -
Category
Documents
-
view
216 -
download
0
Transcript of Matematica e statistica Versione didascalica: parte 3 Sito web del corso Docente: Prof. Sergio...
Matematica e statisticaVersione didascalica: parte 3
• Sito web del corso
http://www.labmat.it
• Docente: Prof. Sergio Invernizzi, Università di Trieste
• e-mail: [email protected]
2.8. Il problema dell’area
Supponiamo che una funzione sia positiva (o zero) f(x) 0 per tuttii valori x di un intervallo [a, b], con a < b.L’integrale della funzione f da a a b è l’area della parte di piano compresa fra l’asse X ed il grafico di f, entro le ascisse a e b
Simbologia
area ( ) = ( )b
af x dx
Esempi:1
0
(2 )(2 )2 ( )
2 2.5
2
( )
( )b
a
b ab a
x dx
x dx
2.9. Calcolo numerico degli integrali
I metodi per il calcolo di integrali che qui trattiamo sono:
• Metodi di interpolazione: il metodo dei rettangoli, ed il metodo dei trapezi, basati sulla interpolazione di Lagrange;
• Metodi probabilistici: il metodo di Monte-Carlo, un metodo molto generale basato sulla simulazione di variabili aleatorie;
• Metodi esatti (o metodi formali), basati sul Teorema Fondamentale del Calcolo.
2.9.1. Metodi di interpolazione
Si supponga di conoscere una tabulazione della funzione f(x) 0 a passo costante h sull’intervallo [a, b], con a < b.
1 2 1
1
...
( ) /
( 1)
1,2,..., 4
( )
n
k
k k
a x x x b
h b a n
x x k h
k n
y f x
2.9.2/3. Metodi dei rettangoli e dei trapezi
La funzione può essere interpolata con la interpolazione costante o con la interpolazione lineare
( )b
af x dx può essere approssimato con le aree verdi
• Sommando aree di rettangoli (metodo dei rettangoli), oppure• Sommando aree di trapezi (metodo dei trapezi)
Regole
1 2 1
1
( ) { ... }b
n na
n
kk
f x dx h y y y y
h y
1 2 1
1
...
( ) /
( 1)
1,2,...,
( )
n
k
k k
a x x x b
h b a n
x x k h
k n
y f x
1 11 2 12 2
11 12 2
( ) { [ ... ] }
{ ( ) }
b
n na
n
n kk
f x dx h y y y y
h y y y
Regola dei rettangoli:
Regola dei trapezi:
Qui salta l’ultimo punto
qua no
La regola dei rettangoli qui definita può essere detta dei rettangoli destri, in quanto tali rettangoli stanno a destra della ascissa in cui sono calcolate le loro altezze.
Chi studia può ricavare le regola dei rettangoli sinistri, che stanno a sinistra della ascissa in cui sono calcolate le loro altezze: viene conseguentemente saltato il primo punto:
1 2 1
1
2
( ) { ... }b
n na
n
kk
f x dx h y y y y
h y
In questo corso utilizziamo di default i rettangoli destri.
Cenno storico
Etimologia di “trapezio”
trapezio = banco, tavolo τραπεζα = banca (Τραπεζα τησ Ελλαδοσ, Banco di Napoli, Banco Monte dei Paschi di Siena)
Regola dei rettangoli su R
2 3, , ,..., ,na x x x b
215
215
5 ( 4)
1
( 4)
2(1 )
( ) 2(1 )
x
x
e dx
f x e
> f <- function(x) 2*(1+exp((-1/5)*(x-4)^2)) > a <- 1 > b <- 5 > n <- 100 > h <- (b-a)/n > xtab <- a + h*c(0:n-1) > h*(sum(f(xtab))) -> integrale > integrale
1
5
100
a
b
n
Regola dei trapezi su R
2 3, , ,..., ,na x x x b
215
215
5 ( 4)
1
( 4)
2(1 )
( ) 2(1 )
x
x
e dx
f x e
> f <- function(x) 2*(1+exp((-1/5)*(x-4)^2)) > a <- 1 > b <- 5 > n <- 100 > h <- (b-a)/n > xtab <- a + h*c(0:n) > h*(sum(f(xtab))-(f(a)+f(b))/2) -> integrale > integrale
1
5
100
a
b
n
Regola dei rettangoli su TI-82
215
215
5 ( 4)
1
( 4)
2(1 )
( ) 2(1 )
1
5
100
x
x
e dx
f x e
a
b
n
ClrHomeInput "A= ",AInput "B= ",BInput "N= ",NInput "F(X)= ",Y1
(B-A)/ N -> HY1(A)-> SFor(K,2,N,1)S+Y1(A+(K-1)*H) -> SEndS*H -> SDisp "Integrale= ",S
Regola dei trapezi su TI-82
215
215
5 ( 4)
1
( 4)
2(1 )
( ) 2(1 )
1
5
100
x
x
e dx
f x e
a
b
n
ClrHomeInput "A= ",AInput "B= ",BInput "N= ",NInput "F(X)= ",Y1
(B-A)/N -> H(Y1(A)+ Y1(B))/2 -> SFor(K,2,N,1)S+Y1(A+(K-1)*H) -> SEndS*H -> SDisp "Integrale= ",S
Stima dell’errore
• Metodo dei rettangoli
• Metodo dei trapezi
1
112
2
128
2
3
2
( )
( )
| '( ) |
| |
| "( ) |
| |
n
n
b an
b an
f x M
I R M
f x M
I T M
Ad esempio per il calcolo di si può assumere M1 = M2 = 1
per cui con “sole” n = 250 suddivisioni si ha
• | - Rn | 0.0197392 (NB: si divide per n )
• | - Tn | 0.00024805 (NB: si divide per n² )
0sin( )x dx
0sin( )x dx
0
sin( )x dx
Esercizio
• Calcolare con il metodo dei trapezi
con n = 250 e fornire una stima dell’errore esaminando graficamente
la derivata seconda con R (o con la funzione TRACE della TI-82)
• Suggerimento:
215
5 ( 4)
12(1 )xe dx
215
215
( 4)
( 4)2425
2 1
27 16 2
( ) ( )
"( ) ( )
x
x
f x e
f x x x e
I matematici hanno dimostrato che per questo integrale (di una funzione importantissima: la gaussiana) non esistono metodi esatti.
215 ( 4)24
25 27 16 2| "( ) | | ( ) | xf x x x e
> f <- function(x) 2*(1+exp(-(1/5)*(x-4)^2))> a <- 1> b <- 5> n <- 250> h <-(b-a)/n> x<-a+c(0:n)*h> y <-f(x)> plot(x,y)> (sum(y)-(y[1]+y[n+1])/2)*h[1] 13.60861> f2 <- function(x) (4/25)*(27-16*x+2*x^2)*exp(-(1/5)*(x-4)^2)> curve(abs(f2(x)),1,5)> M2 <- 0.8> (1/8)*M2*(b-a)^3/n^2[1] 0.0001024>
2.9.4. Metodo Monte-Carlo
Calcolare l’area della parte di piano definita dalla disuguaglianza
22 4 1
202 12
( )y
x x
Fissiamo un rettangolo [a, b] × [c, d ] che contenga tutto il “pesce” e spariamo n = 50000 (cinquantamila) punti a caso nel rettangolo. Contiamo il numero k dei punti che colpiscono il pesce (bordo del pesce compreso). Allora sarà:
area cercata = (k / n ) × area totale del rettangolo
Esempio
{{a, b}, {c, d}} = {{-0.15, 1.37}, {-0.35, 0.35}};area totale = (b - a) (d - c) = 1.064;n = 50000;k = 34280;Integrale (o area) = 0.729478
Formalmente sarebbe (ma gli estremi sono comunque calcolati numericamente!)
Metodo Monte-Carlo su R
xcaso xcaso
ycaso(insuccesso)
ycaso(successo)
Metodo Monte-Carlo su R
> x <- c(1,3,4,1,3,5,6,3)> z <- which(x < 4)> z[1] 1 2 4 5 8
Il comando which
x[1]=1
x[2]=3x[4]=1
x[5]=3x[8]=3
z ha 5 elementi, che non sono i cinque elementi di x minori di 4, bensì i cinque indici di tali elementi, ordinati come lo sono in x.La lista c(1,3,1,3,3)degli elementi di x minori di 4 è x[z].
Metodo Monte-Carlo su R
> f <- function(x) formula di f(x) > a <- valore di a > b <- valore di b> c <- valore di c > d <- valore di d > prove <- numero delle prove > xcaso <- runif(prove,min=a,max=b) > ycaso <- runif(prove,min=c,max=d) > z <- which(ycaso < f(xcaso)) > successi <- length(z) > p <- successi/prove > integrale <- p*(b-a)*(d-c) > plot(xcaso[z],ycaso[z], col="red") > plot(f,0,b, add=TRUE, col="blue")
Metodo Monte-Carlo su TI-82, I
ClrHomeClrDrawPlotsOff FnOff Disp "----------------"Disp "Integrazione"Disp "di f(x) 0 "Disp "Met. Monte Carlo"Input "A= ",AInput "B= ",BInput "N= ",NInput "f(x)= ", Y1
(in blu i comandi essenziali)
Esempio:5
0
xxe dx
Metodo Monte-Carlo su TI-82, II
0 -> C(B-A)/100 -> Wmax(seq(Y1(X),X,A,B,W) -> DA -> XminB -> XmaxC -> YminD -> YmaxAxesOffDrawF Y1(X)0 -> SText(55,1,"Successi =")Text(47,1,"Prove =")
Metodo Monte-Carlo su TI-82, IIIFor(K,1,N) Text(47,28,K) A+rand*(B-A) -> X C+rand*(D-C) -> Y If Y Y1(X) Then Pt-On(X,Y) S+1 -> S Text(55,40,S) EndEndText(5,60,"[ ENTER ]")Pause ClrHome(B-A)*(D-C)*S/N -> IDisp "Integrale =",I