• Non ci sono risultati.

Calcolo Numerico Tutoraggio, lezione 2

N/A
N/A
Protected

Academic year: 2021

Condividi "Calcolo Numerico Tutoraggio, lezione 2"

Copied!
1
0
0

Testo completo

(1)

Calcolo Numerico Tutoraggio, lezione 2

Si raccomanda agli studenti di commentare adeguatamente script e function Matlab.

Problema: Dalla formula di Taylor centrata nell’origine, si ottiene che exp(x 2 ) ≈

n

X

k=0

(x 2 ) k k! . Dopo aver valutato a mano

I n :=

Z 1/4 0

n

X

k=0

(x 2 ) k k! dx =

n

X

k=0

1 k!

Z 1/4 0

x 2k dx ≈ I :=

Z 1/4 0

exp(x 2 )dx (1)

si implementi una routine che valuta I n , per n prefissato.

Inoltre, visto che I ≈ 2.553074606441994e − 01 si valuti I n per n = 1, 2, . . . , 20 e si faccia il grafico delle coppie (n, |I − I n |).

A tale scopo:

1. Si definisca la function calcola In, che abbia la seguente intestazione function S=calcola\_In(n)

% Calcolo di \sum_{k=0}^n \frac{1}{k!} \int_0^{1/4} (x^2)^k In particolare:

(a) La function abbia come variabili di input:

• il numero intero n, per cui S = P n k=0

1 k!

R 1/4 0 x 2k dx.

(b) La function abbia come variabile di output lo scalare S pari a P n k=0

1 k!

R 1/4 0 x 2k dx.

Si osservi che

(a) k! pu´ o essere calcolato mediante il comando gamma(k+1) (si osservi che gamma ´ e una funzione vettoriale;

(b) R 1/4

0 x 2k dx = (1/4) 2k+1

2k+1

.

2. Si definisca la function demo errore In, che abbia la seguente intestazione function demo_errore_In

% Demo di "calcola_In" che la valuta "In" per n=1,2,...,20.

In particolare:

(a) Applichi la function calcola In al caso in cui k = 1, 2, . . . , 20, e salvi i valori ottenuti nel vettore S, ovvero S(k) risulta il valore ottenuto dal calcolo di I k mediante la routine calcola In con input pari a ”k”.

(b) Stampi su monitor le coppie (k, S(k)) per k = 1 : 20, con k in formato decimale con 2 cifre prima della virgola e nessuna dopo la virgola, S(k) in formato esponenziale con 1 cifra prima della virgola e 15 dopo la virgola.

(c) Si assegni a sol il valore 2.553074606441994e − 01.

(d) Nel vettore err si immagazzinino i valori di abs(S-sol). Perch´ e tale comando Matlab e’ corretto?

(e) Stampi su monitor, il valore dell’ultima componente di err, con 1 cifra prima della virgola, 5 dopo la virgola in formato esponenziale.

(f) Esegua su monitor il grafico in scala semilogaritmica delle coppie (k, err k ) per k = 1, . . . , 20 ognuna delle quali sia rappresentata da un puntino in nero.

3. Nella tabella che segue si scrivano:

• l’ultimo valore del vettoreS, ovvero I 20 , con 1 cifra prima della virgola, 15 dopo la virgola in formato esponen- ziale;

• l’ultimo valore del vettore err, ovvero |I − I 20 |, con 1 cifra prima della virgola, 5 dopo la virgola in formato esponenziale.

I 20 |I − I 20 |

Riferimenti

Documenti correlati

La mantissa M è, nella forma normalizzata, un numero frazionario compreso fra 2 –1 e 1, ossia 0.5 ≤ M < 1 (M in pratica viene rappresentato in virgola fissa con la virgola

[r]

Si scrivano sotto l’ultima componente di xv e zv con 1 cifra prima della virgola e 15 dopo la virgola, in formato decimale, come pure la loro differenza in modulo err con 1 cifra

(f) Stampi su monitor, il valore dell’ultima componente di err, con 1 cifra prima della virgola, 5 dopo la virgola in formato esponenziale. (g) Esegua su monitor il grafico in

Si raccomanda agli studenti di commentare adeguatamente script e function Matlab. Problema: Si supponga che la sequenza di numeri reali {x n

• mediante il comando polyfit assegni a p l’approssimante di grado 5 ai minimi qua- drati (utilizzare la variabile grado), relativamente alle coppie aventi come prima componente

scriva su monitor il valore della la k-sima componente del vettore sumdisp (in notazione decimale con 10 cifre prima della virgola e nessuna dopo la virgola);. 2 esegua un grafico

Si può usare la virgola negli elenchi di nomi o aggettivi; per dividere le frasi, soprattutto se il soggetto delle frasi è sempre lo stesso1. Dopo la virgola si usa la