Calcolo Numerico
TEST del 1 SETTEMBRE 2016
Cognome e nome Matricola
Informatica Postazione
FIRMA PER CONSEGNARE FIRMA PER RITIRARSI
Si raccomanda agli studenti di commentare adeguatamente script e function Matlab.
Si desidera calcolare la radice approssimata positiva (non nulla) della equazione x6− x = 1.
• Si consideri la funzione f (x) = sin(x), con x ∈ [0, 2π]. Utilizzando la formula di Newton, si determini analiticamente il polinomio p4 che interpola f nei punti x0 = 0, x1 = π/2, x2 = π,
x3 = 3π/2, x4 = 2π.
• Si consideri la funzione g(x) = cos(x + π), con x ∈ [0, 2π] e si determini il polinomio q4 che
interpola f nei punti x1 = 0, x2 = π/2, x3 = π, x4 = 3π/2, x5 = 2π. E’ possibile determinare q4
noto p4?
• Si scriva una funzione Matlab che data una funzione f e le ascisse x = {x1, . . . , xn}, determini le
differenze divise
f [x1], f [x1, x2], f [x1, x2, x3], . . . , f [x1, . . . , xn]
e le immagazzini in tal ordine nel vettore divdiff . La function avr`a quindi la seguente intestazione:
function divdiff= differenze_divise (f, x) %METODO: calcolo differenze divise
%
% divdiff = metodo (f, x) %
% Dati di ingresso:
% f: funzione (inline function)
% x: vettore delle ascisse
%
% Dati di uscita:
% divdiff: vettore delle differenze divise di f in x
• Si testi la function creata scrivendo uno script di nome testlab1 che produca una tabella di risultati contenenti per colonne il vettore delle ascisse x1 = 0, x2 = π/2, x3 = π, x4 = 3π/2,
x5 = 2π in formato long e, e le differenze divise
f [x1], f [x1, x2], f [x1, x2, x3], f [x1, x2, x3, x4], f [x1, x2, x3, x4, x5],
nel caso f (x) = sin(x), verificando i risultati ottenuti nel primo punto del tema.
• Si testi la function creata scrivendo uno script di nome testlab2 che produca una tabella di risultati contenenti per colonne il vettore delle ascisse x1 = 0, x2 = π/2, x3 = π, x4 = 3π/2,
x5 = 2π in formato long e, e le differenze divise
g[x1], g[x1, x2], g[x1, x2, x3], g[x1, x2, x3, x4, x5], g[x1, . . . , x5]