function testo = teoria(argomento) % TEORIA Raccolta di domande e risposte per Calcolo Scientifico. % teoria elenco argomenti % teoria('Newton') risposte sul tema % teoria('tutto') raccolta completa % testo=teoria('Newton') restituisce il testo senza stamparlo % teoria('fonti') provenienza e limiti della raccolta nomi={'Errori';'Floating point';'Precisione';'Cancellazione';'Convergenza';'Bisezione';'Newton';'Secanti';'Arresto';'Punto fisso';'Newton sistemi';'Applicazioni';'Condizionamento';'Triangolari';'Gauss';'LU';'Cholesky';'Iterativi';'Gradiente';'Gradiente coniugato';'Sistemi minimi quadrati';'QR';'Minimi quadrati';'Lagrange';'Baricentrica';'Interpolazione a tratti';'Spline';'Derivazione';'Errore derivazione';'Quadratura';'Formule semplici';'Quadratura composita';'Cauchy';'Eulero esplicito';'Eulero implicito';'Crank Nicolson';'Heun';'Consistenza';'Stabilita';'Stiff';'Adattivita';'Runge Kutta';'Multistep';'Esame Eulero';'Esame condizionamento';'Esame Lagrange';'Esame LU';'Esame Simpson';'Esame Newton secanti';'Esame sistemi';'Sottodomande';'17 gennaio 2023 D1';'17 gennaio 2023 D2';'14 aprile 2023 D1';'14 aprile 2023 D2';'19 luglio 2023 D1';'19 luglio 2023 D2';'12 luglio 2024 D1';'12 luglio 2024 D2';'11 settembre 2025 D1';'11 settembre 2025 D2';'Costo fattorizzazioni';'BiCGStab';'Punto fisso vettoriale';'Simpson adattivo';'Consistenza contro stabilita';'Ordine sperimentale';'Arrotondamento e ordine';'Stabilita sistemi';'Oscillazioni conservative';'AB3';'RK stadi e passi';'Bisezione iterazioni';'LU riutilizzo';'Errore interpolazione e coefficienti';'Regolarita interpolazione';'Newton inizializzazione';'CG errore';'Scelta passo';'Riduzione ordine'}; nomi{81,1}='Chebyshev'; nomi{82,1}='Unicita Lagrange'; nomi{83,1}='Spline condizioni'; nomi{84,1}='Derivazione formule'; nomi{85,1}='Quadratura costruzione'; nomi{86,1}='Simpson derivazione'; nomi{87,1}='Stabilita assoluta'; nomi{88,1}='Funzioni stabilita'; nomi{89,1}='Zero stabilita'; nomi{90,1}='Multistep radici'; nomi{91,1}='Heun e Crank Nicolson'; nomi{92,1}='Adattivita passo'; nomi{93,1}='QR costruzione'; nomi{94,1}='Definita positivita'; nomi{95,1}='Perturbazioni e residuo'; contenuti=cell(size(nomi)); % Testi conservati come commenti: apostrofi e formule non sono codice. righe = regexp(fileread([mfilename('fullpath') '.m']), '\r\n|\n|\r', 'split'); sezione = 0; for ir = 1:numel(righe) riga = righe{ir}; if strncmp(riga, '%@TOPIC ', 8) sezione = sscanf(riga(9:end), '%d', 1); contenuti{sezione} = ''; elseif sezione > 0 && strncmp(riga, '%|', 2) contenuti{sezione} = [contenuti{sezione} riga(3:end) sprintf('\n')]; end end note = sprintf('%s\n', 'RACCOLTA DI TEORIA - versione revisionata 04/11/2026','Fonte: dispensa allegata Calcolo_scientifico_dispensa_teoria_aggiornata.docx.','Le schede con data e D1/D2 provengono dalla verifica diretta dei PDF. Le tracce Esame della dispensa sono mantenute come approfondimenti.','Archivio temi.html: verificati 24 appelli/preappelli 2006-2025 e 4 PDF applicativi 2001-2005. Domande autonome: 10 nei cinque appelli 2023-2025; aggiunti quesiti teorici ricorrenti negli esercizi. Le risposte sono originali e le domande sono riformulate. Le schede raggruppano richieste equivalenti; non sono soluzioni numeriche complete degli esercizi.','Le altre domande sono integrazioni di studio ricavate dai capitoli della dispensa.','Risposte non ufficiali. Formule in notazione testuale: ^ potenza, _ indice, SUM sommatoria.'); if nargin == 0, argomento = ''; end if isstring(argomento) && isscalar(argomento), argomento=char(argomento); end if ~ischar(argomento), error('Usa un nome testuale.'); end k=lower(strtrim(argomento)); k=strrep(k,'stabilità','stabilita'); k=strrep(k,'_teoria',''); k=strrep(k,'_',' '); idx=find(strcmpi(k,nomi)); switch k case 'simpson' idx=[31 32 48]; case 'trapezi' idx=[31 32]; case 'newton' idx=[7 9 49]; case 'secanti' idx=[8 9 49]; case 'lagrange' idx=[24 46]; case 'chebyshev' idx=[24 46]; case 'lu' idx=[16 47]; case 'condizionamento' idx=[13 45]; end if any(strcmpi(k,{'Condizionamento','Esame condizionamento'})), idx=unique([idx(:); 52]); end if any(strcmpi(k,{'Newton','Arresto'})), idx=unique([idx(:); 53]); end if any(strcmpi(k,{'Lagrange','Esame Lagrange'})), idx=unique([idx(:); 54]); end if any(strcmpi(k,{'Esame sistemi','LU'})), idx=unique([idx(:); 55]); end if any(strcmpi(k,{'Newton','Newton sistemi'})), idx=unique([idx(:); 56]); end if any(strcmpi(k,{'Eulero esplicito','Eulero implicito','Stabilita'})), idx=unique([idx(:); 57]); end if any(strcmpi(k,{'Lagrange','Baricentrica'})), idx=unique([idx(:); 58]); end if any(strcmpi(k,{'Esame Newton secanti','Newton','Secanti'})), idx=unique([idx(:); 59]); end if any(strcmpi(k,{'Quadratura','Formule semplici','Quadratura composita','Trapezi','Punto medio'})), idx=unique([idx(:); 60]); end if any(strcmpi(k,{'Minimi quadrati','Sistemi minimi quadrati','QR'})), idx=unique([idx(:); 61]); end if any(strcmpi(k,{'Cholesky','Gradiente coniugato','Iterativi'})), idx=unique([idx(:); 62]); end if any(strcmpi(k,{'Iterativi','LU','Gradiente','Gradiente coniugato'})), idx=unique([idx(:); 63]); end if any(strcmpi(k,{'Punto fisso','Newton sistemi'})), idx=unique([idx(:); 64]); end if any(strcmpi(k,{'Simpson','Quadratura composita'})), idx=unique([idx(:); 65]); end if any(strcmpi(k,{'Consistenza','Stabilita'})), idx=unique([idx(:); 66]); end if any(strcmpi(k,{'Convergenza','Runge Kutta','Cancellazione'})), idx=unique([idx(:); 67]); end if any(strcmpi(k,{'Convergenza','Errori','Runge Kutta'})), idx=unique([idx(:); 68]); end if any(strcmpi(k,{'Stabilita','Runge Kutta','Eulero esplicito'})), idx=unique([idx(:); 69]); end if any(strcmpi(k,{'Stabilita','Eulero esplicito','Runge Kutta'})), idx=unique([idx(:); 70]); end if any(strcmpi(k,{'Multistep'})), idx=unique([idx(:); 71]); end if any(strcmpi(k,{'Runge Kutta','Multistep'})), idx=unique([idx(:); 72]); end if any(strcmpi(k,{'Bisezione'})), idx=unique([idx(:); 73]); end if any(strcmpi(k,{'LU','Eulero implicito'})), idx=unique([idx(:); 74]); end if any(strcmpi(k,{'Lagrange','Baricentrica','Condizionamento'})), idx=unique([idx(:); 75]); end if any(strcmpi(k,{'Interpolazione a tratti'})), idx=unique([idx(:); 76]); end if any(strcmpi(k,{'Newton','Newton sistemi'})), idx=unique([idx(:); 77]); end if any(strcmpi(k,{'Gradiente','Gradiente coniugato'})), idx=unique([idx(:); 78]); end if any(strcmpi(k,{'Runge Kutta','Stabilita','Eulero implicito'})), idx=unique([idx(:); 79]); end if any(strcmpi(k,{'Cauchy','Stabilita'})), idx=unique([idx(:); 80]); end if any(strcmpi(k,{'Lagrange','Chebyshev'})), idx=unique([idx(:); 81]); end if any(strcmpi(k,{'Lagrange','Unicita Lagrange'})), idx=unique([idx(:); 82]); end if any(strcmpi(k,{'Spline','Spline condizioni'})), idx=unique([idx(:); 83]); end if any(strcmpi(k,{'Derivazione','Errore derivazione','Derivazione formule'})), idx=unique([idx(:); 84]); end if any(strcmpi(k,{'Quadratura','Formule semplici','Quadratura composita','Quadratura costruzione'})), idx=unique([idx(:); 85]); end if any(strcmpi(k,{'Simpson','Simpson derivazione'})), idx=unique([idx(:); 86]); end if any(strcmpi(k,{'Stabilita','Stiff','Stabilita assoluta'})), idx=unique([idx(:); 87]); end if any(strcmpi(k,{'Stabilita','Eulero esplicito','Eulero implicito','Crank Nicolson','Heun','Runge Kutta','Funzioni stabilita'})), idx=unique([idx(:); 88]); end if any(strcmpi(k,{'Consistenza','Stabilita','Multistep','Zero stabilita'})), idx=unique([idx(:); 89]); end if any(strcmpi(k,{'Multistep','Consistenza','Multistep radici'})), idx=unique([idx(:); 90]); end if any(strcmpi(k,{'Heun','Crank Nicolson','Heun e Crank Nicolson'})), idx=unique([idx(:); 91]); end if any(strcmpi(k,{'Adattivita','Stiff','Adattivita passo'})), idx=unique([idx(:); 92]); end if any(strcmpi(k,{'QR','Minimi quadrati','QR costruzione'})), idx=unique([idx(:); 93]); end if any(strcmpi(k,{'Cholesky','Gradiente','Gradiente coniugato','Definita positivita'})), idx=unique([idx(:); 94]); end if any(strcmpi(k,{'Condizionamento','Perturbazioni e residuo'})), idx=unique([idx(:); 95]); end if strcmp(k,'esami'), idx=52:80; end if strcmp(k,'fonti') testo=note; elseif strcmp(k,'tutto') testo=[note sprintf('\n')]; for j=1:numel(nomi), testo=[testo sprintf('\n=== %s ===\n',nomi{j}) contenuti{j}]; end elseif ~isempty(idx) testo=''; for j=idx(:)', testo=[testo sprintf('\n=== %s ===\n',nomi{j}) contenuti{j}]; end else testo=sprintf('ARGOMENTI DISPONIBILI\n'); if ~isempty(k), testo=[sprintf('Argomento non riconosciuto: %s\n',argomento) testo]; end for j=1:numel(nomi), testo=[testo sprintf(' teoria(''%s'')\n',nomi{j})]; end testo=[testo sprintf('\nAltri comandi: teoria(''esami''), teoria(''Simpson''), teoria(''Trapezi''), teoria(''Chebyshev''), teoria(''tutto''), teoria(''fonti'').\n')]; end if nargout==0, fprintf('%s\n',testo); clear testo; end end % DATI DI STUDIO - mantenere questo blocco nello stesso file. %@TOPIC 1 %|DOMANDA DI RIPASSO AGGIUNTA %|DOMANDA: Illustra Dal problema reale al risultato numerico: definizioni, formule, ipotesi, proprieta %|e limiti. %| %|RISPOSTA: %|Un modello matematico x_(m) approssima un fenomeno reale x_(f); un algoritmo numerico produce una %|soluzione x_(n) approssimata del modello; l’implementazione al calcolatore produce x_(c). Il %|risultato dipende da errore di modellazione, errore di discretizzazione/troncamento e errore di %|arrotondamento. Un algoritmo accurato non può correggere dati sbagliati o un modello inadeguato. %|Errori assoluti e relativi %|Dato il valore esatto x e quello approssimato tilde(x): %|E_(a)=|x−tilde(x)|,  E_(r)=(|x−tilde(x)|)/(|x|) (x≠0). %|Per vettori si usano le norme: E_(a)=∥x−tilde(x)∥ e E_(r)=∥x−tilde(x)∥/∥x∥ (se x≠0). Non confondere %|l’errore con il residuo: per f(x)=0 il residuo è |f(tilde(x))|; per Ax=b è ∥b−Atilde(x)∥. %|Risposta modello — «Quali errori si incontrano nel calcolo numerico?» %|Il calcolo scientifico sostituisce un problema reale con un modello matematico e poi con un %|procedimento numerico eseguibile al calcolatore. Di conseguenza la soluzione può essere alterata %|dall’approssimazione del modello, dal troncamento introdotto dal metodo e dall’arrotondamento %|imposto dalla precisione finita. Per quantificare il risultato si distinguono errore assoluto, che %|misura la differenza tra valore esatto e approssimato, ed errore relativo, che rapporta la %|differenza alla grandezza del dato. L’errore relativo non è definito per un riferimento nullo. La %|grandezza del residuo può essere utile nel controllo dell’algoritmo, ma non coincide necessariamente %|con l’errore sulla soluzione. %@TOPIC 2 %|DOMANDA DI RIPASSO AGGIUNTA %|DOMANDA: Illustra Notazione posizionale, rappresentazione esponenziale, floating-point: definizioni, %|formule, ipotesi, proprieta e limiti. %| %|RISPOSTA: %|In base β un numero è una combinazione di cifre e potenze della base. Una forma normalizzata di %|floating-point è: %|x=(−1)^(s) m β^(e), %|con segno s∈{0,1}, mantissa m normalizzata, base β ed esponente intero e in un intervallo finito. %|Per un sistema normalizzato con t cifre significative in base β, si può usare la convenzione %|1/β≤m<1. Altre convenzioni pongono 1≤m<β: cambiano i limiti per m, non la sostanza. %|In IEEE 754 i formati binari comuni sono binary32 (32 bit, circa 7 cifre decimali significative) e %|binary64 (64 bit, circa 15–16 cifre). Esistono valori speciali, come ±∞ e NaN, e numeri subnormali %|per valori molto vicini a zero. Overflow: numero troppo grande per il formato; underflow: numero %|troppo piccolo in modulo, con possibile perdita di precisione o risultato zero. %@TOPIC 3 %|DOMANDA DI RIPASSO AGGIUNTA %|DOMANDA: Illustra Precisione di macchina e unità di arrotondamento: definizioni, formule, ipotesi, %|proprieta e limiti. %| %|RISPOSTA: %|Nel modello usuale di un’operazione in floating-point, in assenza di overflow/underflow e sotto %|arrotondamento al più vicino: %|fl(a∘b)=(a∘b)(1+δ),  |δ|≤u, %|per ∘∈{+,−,×,÷}, se il risultato esatto è rappresentabile nel range normale; u è la unit roundoff. %|In un formato ideale con precisione t in base β e arrotondamento al più vicino: %|u=(1)/(2)β^(1−t). %|Per double binario, u=2^(−53)≈1.11⋅10^(−16). In molte librerie eps indica invece la distanza tra 1 e %|il successivo numero rappresentabile, pari a 2^(−52) per double, cioè 2u. Attenzione: precisione di %|macchina e unità di arrotondamento possono essere definite con convenzioni diverse nei testi; %|bisogna esplicitare quale si sta adottando. %|Proprietà aritmetiche che possono fallire %|L’aritmetica floating-point non è associativa: %|fl(fl(a+b)+c)≠fl(a+fl(b+c)). %|Può fallire anche la distributività. In generale l’ordine delle operazioni conta. Esempio %|qualitativo: sommando numeri di scale molto diverse, i contributi piccoli possono essere assorbiti. %@TOPIC 4 %|DOMANDA DI RIPASSO AGGIUNTA %|DOMANDA: Illustra Cancellazione numerica e propagazione: definizioni, formule, ipotesi, proprieta e %|limiti. %| %|RISPOSTA: %|La sottrazione di quantità quasi uguali può causare cancellazione di cifre significative. Il %|problema non è soltanto l’errore relativo della singola sottrazione, ma il fatto che piccoli errori %|già presenti negli operandi diventano dominanti rispetto alla differenza. %|Esempio classico: per x molto grande l’espressione root[2](x+1)−root[2](x) può essere riscritta %|razionalizzando: %|root[2](x+1)−root[2](x)=(1)/(root[2](x+1)+root[2](x)). %|La seconda forma evita una sottrazione potenzialmente critica quando il risultato è piccolo rispetto %|agli operandi (per esempio per x molto grande). %|Per una funzione scalare differenziabile, perturbando x di Δx: %|Δf=f(x+Δx)−f(x)≈f′(x)Δx. %|Per più variabili: %|Δf≈∑[j=1;n] (∂f)/(∂x_(j))Δx_(j). %|Condizionamento di un problema e stabilità di un algoritmo %|La sensibilità del problema è diversa dal comportamento dell’algoritmo. Per y=f(x), il %|condizionamento relativo locale, quando definito, è: %|κ_(f)(x)=|(xf′(x))/(f(x))|,  (|Δf|)/(|f(x)|)≈κ_(f)(x)(|Δx|)/(|x|). %|Un problema mal condizionato amplifica le perturbazioni dei dati anche con un buon algoritmo. Un %|algoritmo instabile amplifica inutilmente gli errori rispetto a quanto richiede il problema. Un %|obiettivo comune è la stabilità all’indietro: il risultato calcolato sia soluzione esatta di un %|problema vicino a quello originario. [I] %|Risposta modello — «Spieghi il floating-point e gli errori di arrotondamento» %|Il calcolatore rappresenta soltanto un insieme finito di numeri reali, mediante segno, mantissa ed %|esponente. I numeri non rappresentabili vengono arrotondati, introducendo piccoli errori che possono %|accumularsi. Il modello standard descrive una singola operazione come il risultato esatto %|moltiplicato per un fattore 1+δ, con |δ| limitato dall’unità di arrotondamento. A causa della %|precisione finita possono non valere associatività e distributività. Una situazione particolarmente %|critica è la cancellazione, quando sottraiamo numeri molto vicini e perdiamo cifre significative. È %|quindi necessario scegliere formule numericamente stabili e distinguere il condizionamento del %|problema dalla stabilità dell’algoritmo. %| %|Capitolo 2 — Equazioni non lineari, metodi di punto fisso e sistemi non lineari [P: settimane 2–4] %@TOPIC 5 %|DOMANDA DI RIPASSO AGGIUNTA %|DOMANDA: Illustra Il problema f(x)=0, radici e convergenza: definizioni, formule, ipotesi, proprieta %|e limiti. %| %|RISPOSTA: %|Dato f:[a,b]→R, si cerca una radice α tale che f(α)=0. Una radice è semplice se f′(α)≠0; è multipla %|di molteplicità m se f(α)=⋯=f^((m−1))(α)=0, f^((m))(α)≠0 (supponendo sufficiente regolarità). %|L’errore è e_(k)=x_(k)−α. La convergenza ha ordine p se, per una successione che converge e con %|errori non nulli, %|lim_{k→∞}(|e_(k+1)|)/(|e_(k)|^(p))=C,  01 superlineare; con p=2 quadratica. L’ordine %|è una proprietà locale/asintotica, non promette convergenza da qualunque punto iniziale. %@TOPIC 6 %|DOMANDA DI RIPASSO AGGIUNTA %|DOMANDA: Illustra Metodo di bisezione: definizioni, formule, ipotesi, proprieta e limiti. %| %|RISPOSTA: %|Ipotesi. f continua su [a_(0),b_(0)], con f(a_(0))f(b_(0))<0; per il teorema degli zeri esiste %|almeno una radice nell’intervallo. Il metodo non richiede la derivata. %|Algoritmo. A ogni passo si calcola il medio c_(k)=(a_(k)+b_(k))/2; se f(c_(k))=0 abbiamo trovato una %|radice, altrimenti si conserva una metà dell’intervallo che presenta il cambiamento di segno. La %|lunghezza dopo k dimezzamenti è: %|b_(k)−a_(k)=(b_(0)−a_(0))/(2^(k)). %|L’errore del punto medio c_(k) rispetto a una radice nell’intervallo è limitato da: %||c_(k)−α|≤(b_(k)−a_(k))/(2)=(b_(0)−a_(0))/(2^(k+1)). %|Per garantire errore del punto medio ≤tol basta scegliere k tale che (b_(0)−a_(0))/2^(k+1)≤tol. Una %|formula equivalente per la lunghezza dell’intervallo è k≥⌈log_(2)((b_(0)−a_(0))/tol)⌉. %|Limiti. È lento rispetto a Newton vicino a radici semplici; non rileva necessariamente radici di %|molteplicità pari, perché non cambia segno; non garantisce unicità della radice. %|Risposta modello — «Mi parli della bisezione» %|Il metodo di bisezione è un algoritmo robusto per approssimare uno zero di una funzione continua. Si %|parte da due estremi con valori della funzione di segno opposto: per il teorema degli zeri esiste %|almeno una radice nell’intervallo. A ogni passo calcolo il punto medio e tengo la metà che conserva %|il cambiamento di segno. L’ampiezza dell’intervallo si dimezza sempre, e quindi posso conoscere a %|priori un limite superiore dell’errore del punto medio e stimare il numero di iterazioni. Il metodo %|ha una riduzione lineare dell’intervallo, non richiede derivate ed è affidabile; è però meno veloce %|di Newton e non è applicabile direttamente quando non trovo un cambiamento di segno. %@TOPIC 7 %|DOMANDA DI RIPASSO AGGIUNTA %|DOMANDA: Illustra Metodo di Newton o delle tangenti: definizioni, formule, ipotesi, proprieta e %|limiti. %| %|RISPOSTA: %|Si parte da x_(0) e si sostituisce localmente f con la sua linearizzazione: %|f(x_(k)+s)≈f(x_(k))+f′(x_(k))s. %|Imponendo che l’approssimazione lineare sia nulla e assumendo f′(x_(k))≠0: %|x_(k+1)=x_(k)−(f(x_(k)))/(f′(x_(k))). %|Interpretazione geometrica: x_(k+1) è l’intersezione con l’asse orizzontale della tangente al %|grafico nel punto (x_(k),f(x_(k))). %|Convergenza locale. Se f è abbastanza regolare (ad esempio C^(2) in un intorno della radice), f(α)=0 %|e f′(α)≠0, allora a partire da x_(0) sufficientemente vicino il metodo converge quadraticamente: %|e_(k+1)=(f″(α))/(2f′(α))e_(k)^(2)+o(e_(k)^(2)). %|Se f″(α)=0, il termine dominante può avere ordine superiore. La formula richiede che f′(x_(k)) non %|sia nullo durante l’iterazione. Un punto iniziale poco favorevole può provocare oscillazioni, %|divergenza o convergenza a un’altra radice. %|Radici multiple. Se f(x)=(x−α)^(m)q(x), q(α)≠0, m>1, Newton standard è tipicamente soltanto lineare, %|con fattore asintotico (m−1)/m. Se la molteplicità è nota: %|x_(k+1)=x_(k)−m(f(x_(k)))/(f′(x_(k))) %|ripristina sotto adeguate ipotesi la convergenza quadratica locale. [L/I: il laboratorio analizza le %|radici multiple e usa anche Newton modificato.] %|Risposta modello — «Mi parli di Newton per il calcolo delle radici» %|Newton è un metodo iterativo per risolvere f(x)=0. A partire da un punto iniziale sostituisce la %|funzione con la tangente, cioè con lo sviluppo di Taylor al primo ordine. Ponendo uguale a zero la %|retta si ricava l’aggiornamento x_(k+1)=x_(k)−f(x_(k))/f′(x_(k)). Per una radice semplice, con %|funzione sufficientemente regolare e punto iniziale sufficientemente vicino, il metodo converge %|localmente con ordine quadratico: l’errore al passo successivo è proporzionale al quadrato di quello %|precedente. È quindi molto rapido nella fase finale. Rispetto alla bisezione non richiede di %|racchiudere la radice in un intervallo con cambiamento di segno, ma necessita del calcolo della %|derivata e non garantisce la convergenza globale. In presenza di una radice multipla Newton standard %|perde generalmente l’ordine quadratico; se conosco la molteplicità posso utilizzare Newton %|modificato. %@TOPIC 8 %|DOMANDA DI RIPASSO AGGIUNTA %|DOMANDA: Illustra Metodo delle secanti: definizioni, formule, ipotesi, proprieta e limiti. %| %|RISPOSTA: %|Sostituiamo la derivata nella formula di Newton con la pendenza tra due punti: %|f′(x_(k))≈(f(x_(k))−f(x_(k−1)))/(x_(k)−x_(k−1)). %|Ne segue, per denominatore non nullo, %|x_(k+1)=x_(k)−f(x_(k))(x_(k)−x_(k−1))/(f(x_(k))−f(x_(k−1))). %|Richiede due valori iniziali ma non la derivata. Per una radice semplice e nelle consuete ipotesi %|locali la convergenza ha ordine p=(1+root[2](5))/2≈1.618, superlineare ma inferiore a quella %|quadratica di Newton. Se f(x_(k))≈f(x_(k−1)), il passo può diventare molto grande o indefinito. %|Risposta modello — «Confronti Newton e secanti» %|Entrambi i metodi cercano l’intersezione con l’asse delle ascisse di un’approssimazione lineare %|della funzione. Newton usa la tangente, quindi richiede la derivata; il metodo delle secanti usa la %|retta per due approssimazioni successive, sostituendo la derivata con una differenza divisa. Newton %|ha convergenza quadratica locale su radici semplici, mentre le secanti hanno ordine circa 1,618. Le %|secanti sono utili quando calcolare la derivata è scomodo o costoso, ma entrambi i metodi dipendono %|dai valori iniziali e possono non convergere. %@TOPIC 9 %|DOMANDA DI RIPASSO AGGIUNTA %|DOMANDA: Illustra Test di arresto: incremento e residuo: definizioni, formule, ipotesi, proprieta e %|limiti. %| %|RISPOSTA: %|Poiché α non è noto, l’errore |x_(k)−α| non è direttamente calcolabile. Si usano ad esempio: %||x_(k+1)−x_(k)|≤tol_(x),  |f(x_(k+1))|≤tol_(f), %|oppure il criterio relativo sull’incremento: %|(|x_(k+1)−x_(k)|)/(max(1,|x_(k+1)|))≤tol. %|Cautela: un incremento piccolo può derivare da stagnazione; un residuo piccolo non garantisce errore %|piccolo se |f′(α)| è piccolo. Localmente, per una radice semplice: %||x−α|≈(|f(x)|)/(|f′(α)|). %|Affiancare un limite k_(max) per evitare cicli indefiniti e testare eventuali derivate o %|denominatori molto piccoli. %@TOPIC 10 %|DOMANDA DI RIPASSO AGGIUNTA %|DOMANDA: Illustra Metodi di punto fisso: definizioni, formule, ipotesi, proprieta e limiti. %| %|RISPOSTA: %|Un punto α è fisso per g se g(α)=α. Si riscrive f(x)=0 nella forma equivalente x=g(x) e si itera: %|x_(k+1)=g(x_(k)). %|Teorema di contrazione, in un intervallo. Se g:[a,b]→[a,b] è continua e |g(x)−g(y)|≤L|x−y| per ogni %|x,y con 01 è localmente repulsivo. Se |g′(α)|=1, questo solo criterio non decide. Se g′(α)=0 e g è %|regolare, si può avere ordine almeno quadratico. %|Newton è esso stesso un metodo di punto fisso con g(x)=x−f(x)/f′(x), per f′(x)≠0. %|Risposta modello — «Che cos’è il metodo di punto fisso? Quando converge?» %|La ricerca dello zero può essere trasformata nella ricerca di un punto fisso di una funzione g, cioè %|di un valore che soddisfa g(α)=α. Si parte da x_(0) e si costruisce la successione x_(k+1)=g(x_(k)). %|La scelta di g è fondamentale: equazioni equivalenti possono produrre iterazioni numericamente molto %|diverse. Una condizione sufficiente di convergenza globale su un intervallo è che g mandi %|l’intervallo in sé stesso e sia contrattiva, con costante L<1; allora il punto fisso è unico e %|l’iterazione converge da qualsiasi punto iniziale dell’intervallo. Localmente, il modulo di g′(α) %|minore di uno indica attrattività. La convergenza è tipicamente lineare, ma può essere più rapida se %|la derivata della funzione iterativa si annulla nel punto fisso. %@TOPIC 11 %|DOMANDA DI RIPASSO AGGIUNTA %|DOMANDA: Illustra Sistemi non lineari e Newton multidimensionale: definizioni, formule, ipotesi, %|proprieta e limiti. %| %|RISPOSTA: %|Si cerca x∈R^(n) tale che: %|F(x)=[f_(1)(x); ⋮; f_(n)(x)]=0. %|La Jacobiana contiene le derivate parziali: %|J_(F)(x)=[(∂f_(i))/(∂x_(j))(x)]_(i,j=1)^(n). %|Linearizziamo F(x_(k)+s)≈F(x_(k))+J_(F)(x_(k))s e imponiamo valore zero. A ogni iterazione %|risolviamo: %|J_(F)(x_(k))s_(k)=−F(x_(k)),  x_(k+1)=x_(k)+s_(k). %|È equivalente a x_(k+1)=x_(k)−J_(F)(x_(k))^(−1)F(x_(k)) solo matematicamente, quando l’inversa %|esiste. Numericamente si usa s = -J\F, senza calcolare l’inversa esplicita. Per F sufficientemente %|regolare, Jacobiana non singolare nella soluzione e dato iniziale abbastanza vicino, la convergenza %|è quadratica locale. Un criterio di arresto può richiedere ∥s_(k)∥ e/o ∥F(x_(k+1))∥ piccoli. %|ATTENZIONE al segno in MATLAB: le due implementazioni coerenti sono s = J\(-F); xnew=x+s; oppure %|z=J\F; xnew=x-z;. Fare z=J\F; xnew=x+z; non è Newton e generalmente diverge. Le formule vanno %|verificate rispetto agli script, perché alcune presentazioni schematiche possono omettere il segno %|nel testo estratto dai PDF. %|Risposta modello — «Mi parli di Newton per sistemi» %|Per risolvere un sistema non lineare si cerca il vettore che annulla contemporaneamente le %|componenti di una funzione F:R^(n)→R^(n). Newton generalizza la formula scalare sostituendo la %|derivata con la matrice Jacobiana. Tramite lo sviluppo di Taylor vettoriale al primo ordine ottengo %|il sistema lineare J_(F)(x_(k))s_(k)=−F(x_(k)). Risolvo questo sistema per calcolare la correzione e %|aggiorno x_(k+1)=x_(k)+s_(k). Non conviene formare l’inversa della Jacobiana: in MATLAB è %|preferibile il comando \. Se la Jacobiana della soluzione è non singolare e la stima iniziale è %|sufficientemente vicina, si ha convergenza quadratica locale. Il costo computazionale è maggiore del %|caso scalare, perché occorre costruire la Jacobiana e risolvere un sistema lineare a ogni %|iterazione. %@TOPIC 12 %|DOMANDA DI RIPASSO AGGIUNTA %|DOMANDA: Illustra Applicazioni di laboratorio [L]: definizioni, formule, ipotesi, proprieta e %|limiti. %| %|RISPOSTA: %|Le esercitazioni mostrano anche ricerca delle radici dei polinomi, effetto della scelta di x_(0), %|radici complesse, confronto tra Newton standard e modificato e ricerca di un minimo mediante %|azzeramento della derivata. Questi sono contesti applicativi dei metodi precedenti; non equivalgono, %|nel calendario, a un corso generale separato sull’ottimizzazione numerica. %| %|Capitolo 5 — Sistemi lineari e metodi numerici [P: settimane 6–8] %@TOPIC 13 %|DOMANDA DI RIPASSO AGGIUNTA %|DOMANDA: Illustra Il problema Ax=b: esistenza, unicità, residuo e condizionamento: definizioni, %|formule, ipotesi, proprieta e limiti. %| %|RISPOSTA: %|Dato un sistema quadrato Ax=b, A∈R^(n×n), le seguenti condizioni sono equivalenti: A invertibile; %|detA≠0; rango n; il sistema omogeneo Ax=0 ha solo soluzione nulla; per ogni b la soluzione è unica. %|Il sistema può nascere da modelli fisici, discretizzazione di equazioni, ottimizzazione e Newton per %|sistemi non lineari. %|Norme matriciali indotte: %|∥A∥=max_{x≠0}(∥Ax∥)/(∥x∥), ∥A∥_(∞)=max_{i}∑[j;​] |a_(ij)|, ∥A∥_(1)=max_{j}∑[i;​] |a_(ij)|. %|Per matrice invertibile il numero di condizionamento, rispetto alla norma scelta, è: %|κ(A)=∥A∥ ∥A^(−1)∥≥1. %|Se tilde(x) è approssimazione e r=b−Atilde(x) è il residuo, allora x−tilde(x)=A^(−1)r, perciò: %|∥x−tilde(x)∥≤∥A^(−1)∥ ∥r∥. %|Inoltre, con b=Ax≠0: %|(∥x−tilde(x)∥)/(∥x∥)≤κ(A)(∥r∥)/(∥b∥). %|Il residuo piccolo non basta a garantire errore relativo piccolo quando κ(A) è grande. Per una %|perturbazione solo nel termine noto A(x+Δx)=b+Δb: %|(∥Δx∥)/(∥x∥)≤κ(A)(∥Δb∥)/(∥b∥). %|Interpretazione: il condizionamento appartiene al problema, non al metodo scelto per risolverlo. La %|presenza di errori di arrotondamento rende importante usare algoritmi stabili. %|Risposta modello — «Mi spieghi il numero di condizionamento di una matrice» %|Un sistema lineare quadrato Ax=b ammette una soluzione unica se e solo se A è non singolare. Il %|numero di condizionamento κ(A)=∥A∥∥A^(−1)∥ quantifica quanto la soluzione può essere sensibile a %|piccole perturbazioni dei dati. Se è vicino a uno, il problema è relativamente ben condizionato; se %|è molto grande, anche piccole variazioni possono produrre errori importanti. Il residuo %|r=b−Atilde(x) permette di misurare quanto bene la soluzione approssimata soddisfa le equazioni, ma %|un residuo piccolo non garantisce da solo una soluzione accurata: il legame con l’errore relativo %|coinvolge proprio il numero di condizionamento. Per questo condizionamento e stabilità %|dell’algoritmo devono essere valutati separatamente. %@TOPIC 14 %|DOMANDA DI RIPASSO AGGIUNTA %|DOMANDA: Illustra Sistemi triangolari e sostituzioni: definizioni, formule, ipotesi, proprieta e %|limiti. %| %|RISPOSTA: %|Per Lx=b con L triangolare inferiore e diagonale non nulla, la sostituzione in avanti è: %|x_(i)=(b_(i)−∑[j=1;i−1] l_(ij)x_(j))/(l_(ii)),  i=1,…,n. %|Per Ux=b con U triangolare superiore e diagonale non nulla, la sostituzione all’indietro è: %|x_(i)=(b_(i)−∑[j=i+1;n] u_(ij)x_(j))/(u_(ii)),  i=n,…,1. %|I metodi richiedono O(n^(2)) operazioni per matrici dense e costituiscono i passi finali delle %|fattorizzazioni LU, Cholesky e QR. %@TOPIC 15 %|DOMANDA DI RIPASSO AGGIUNTA %|DOMANDA: Illustra Eliminazione di Gauss e pivotazione per righe: definizioni, formule, ipotesi, %|proprieta e limiti. %| %|RISPOSTA: %|L’eliminazione di Gauss applica operazioni elementari di riga per trasformare Ax=b in Ux=c, dove U è %|triangolare superiore. Al passo k, se il pivot a_(kk)^((k))≠0: %|m_(ik)=(a_(ik)^((k)))/(a_(kk)^((k))),  a_(ij)^((k+1))=a_(ij)^((k))−m_(ik)a_(kj)^((k)), i>k, j>k. %|Pivotazione parziale per righe: si cerca nella colonna k, tra le righe k,…,n, un elemento di massimo %|modulo e lo si scambia con quello sulla diagonale. In questo modo si evitano pivot nulli e si riduce %|il rischio di amplificare gli errori dovuti a pivot piccolissimi. La complessità per matrici dense è %|O(n^(3)); le sostituzioni costano O(n^(2)). %|Risposta modello — «Illustri Gauss e la pivotazione» %|L’eliminazione di Gauss è un metodo diretto per risolvere sistemi lineari quadrati. Attraverso %|combinazioni lineari delle righe annulla progressivamente i coefficienti sotto la diagonale, %|ottenendo un sistema triangolare superiore che risolve con sostituzione all’indietro. Il problema %|numerico principale è la scelta del pivot: una divisione per un valore nullo interrompe il metodo, %|mentre un pivot molto piccolo può produrre grandi moltiplicatori e amplificare l’arrotondamento. La %|pivotazione parziale scambia le righe scegliendo il coefficiente di massimo modulo nella colonna %|corrente. Il costo del metodo per matrici dense cresce come il cubo della dimensione, ma la %|procedura è largamente utilizzata grazie alla sua efficacia e robustezza con pivotazione. %@TOPIC 16 %|DOMANDA DI RIPASSO AGGIUNTA %|DOMANDA: Illustra Fattorizzazione LU: definizioni, formule, ipotesi, proprieta e limiti. %| %|RISPOSTA: %|Si cerca una decomposizione: %|A=LU, %|con L triangolare inferiore (spesso con diagonale unitaria) e U superiore. È possibile senza scambi %|di riga se i pivot che si incontrano non si annullano; una condizione sufficiente classica è che i %|minori principali iniziali siano tutti non nulli. Con pivotazione per righe si ottiene invece: %|PA=LU, %|con P matrice di permutazione. Per risolvere Ax=b si procede con due sistemi triangolari: %|Ly=Pb,  Ux=y. %|Vantaggio: se la matrice A resta la stessa e cambiano i termini noti b, la fattorizzazione si esegue %|una volta sola; poi ogni nuovo sistema richiede solo sostituzioni triangolari. %|Determinante: se PA=LU, allora det(A)=det(P)∏[i;​] u_(ii), quando L ha diagonale unitaria. L’inversa %|si può calcolare risolvendo Ax=e_(i) per tutte le colonne, ma di norma non serve formarla per %|risolvere un singolo sistema. %|Risposta modello — «Che cos’è la fattorizzazione LU?» %|La fattorizzazione LU consiste nello scrivere una matrice quadrata come prodotto di una matrice %|triangolare inferiore e una superiore. Nasce dall’eliminazione di Gauss: i moltiplicatori sono %|memorizzati nella parte inferiore e la matrice trasformata nella parte superiore. Una volta ottenuti %|L e U, risolvo il sistema con una sostituzione in avanti e una all’indietro. Se sono necessari %|scambi di righe, la forma corretta è PA=LU, dove P registra le permutazioni. Il principale vantaggio %|è l’efficienza quando si devono risolvere numerosi sistemi con la stessa matrice e termini noti %|diversi. %@TOPIC 17 %|DOMANDA DI RIPASSO AGGIUNTA %|DOMANDA: Illustra Fattorizzazione di Cholesky: definizioni, formule, ipotesi, proprieta e limiti. %| %|RISPOSTA: %|Per A simmetrica definita positiva (A=A^(T) e x^(T)Ax>0 per ogni x≠0), esiste un’unica %|fattorizzazione: %|A=LL^(T), %|con L triangolare inferiore e diagonale positiva. Equivalente: A=R^(T)R. Si risolve: %|Ly=b,  L^(T)x=y. %|È più economica di una LU generale per matrici dense simmetriche definite positive e non necessita %|di pivotazione nelle ipotesi ideali. Condizione essenziale: la matrice deve essere simmetrica e %|definita positiva; la sola simmetria non basta. %|Risposta modello — «Quando conviene Cholesky?» %|Cholesky è una fattorizzazione specifica per matrici reali simmetriche definite positive, scritte %|come LL^(T). La definita positività garantisce l’esistenza della fattorizzazione con diagonale %|positiva. Come con LU, la soluzione passa attraverso due sistemi triangolari, ma la struttura %|simmetrica riduce memoria e operazioni. È quindi preferibile nei problemi che forniscono %|naturalmente matrici simmetriche definite positive, ad esempio in molti problemi di minimo quadrato %|ben posti e in alcuni sistemi derivati da modelli fisici. Non va applicata direttamente a una %|matrice simmetrica indefinita. %@TOPIC 18 %|DOMANDA DI RIPASSO AGGIUNTA %|DOMANDA: Illustra Metodi iterativi e matrici sparse: definizioni, formule, ipotesi, proprieta e %|limiti. %| %|RISPOSTA: %|Un metodo iterativo produce x_(0),x_(1),… cercando di avvicinarsi alla soluzione senza completare %|un’eliminazione. Può sfruttare soprattutto prodotti matrice-vettore e quindi essere conveniente per %|matrici sparse di grandi dimensioni. Un procedimento iterativo può essere scritto in forma generale: %|x_(k+1)=Bx_(k)+c. %|Converge da ogni x_(0) se ρ(B)<1 (raggio spettrale). [I: criterio generale utile a inquadrare i %|metodi; le lezioni si concentrano soprattutto su gradiente e gradiente coniugato.] %|Una matrice sparsa contiene molti zeri e si memorizza conservando soltanto gli elementi non nulli. %|Nelle fattorizzazioni dirette può comparire fill-in, ossia coefficienti non nulli in posizioni %|originariamente nulle. La scelta dell’ordinamento influenza memoria e costo. %@TOPIC 19 %|DOMANDA DI RIPASSO AGGIUNTA %|DOMANDA: Illustra Metodo del gradiente per Ax=b: definizioni, formule, ipotesi, proprieta e limiti. %| %|RISPOSTA: %|Ipotesi: A simmetrica definita positiva. Risolvere Ax=b equivale a minimizzare la funzione %|quadratica strettamente convessa: %|φ(x)=(1)/(2)x^(T)Ax−b^(T)x,  ∇φ(x)=Ax−b. %|Ponendo r_(k)=b−Ax_(k) il residuo, la direzione di discesa è r_(k)=−∇φ(x_(k)). Il metodo del %|gradiente con ricerca esatta lungo la direzione usa: %|α_(k)=(r_(k)^(T)r_(k))/(r_(k)^(T)Ar_(k)),  x_(k+1)=x_(k)+α_(k)r_(k). %|La direzione del residuo corrente è ortogonale al residuo successivo, quando si sceglie il passo %|ottimale e in aritmetica esatta. La convergenza può essere lenta quando il condizionamento spettrale %|di A è elevato; geometricamente il percorso presenta spesso una traiettoria a zig-zag. %|Risposta modello — «Illustri il metodo del gradiente» %|Per una matrice simmetrica definita positiva, il sistema Ax=b equivale alla minimizzazione di una %|funzione quadratica strettamente convessa. Il suo gradiente è Ax−b, quindi il residuo b−Ax_(k) %|fornisce la direzione di massima discesa locale. Si aggiorna la soluzione nella direzione del %|residuo scegliendo il passo che minimizza la funzione quadratica lungo quella retta, ottenendo %|α_(k)=(r_(k)^(T)r_(k))/(r_(k)^(T)Ar_(k)). Il metodo sfrutta prodotti matrice-vettore ed è adatto %|anche a matrici sparse. Tuttavia può essere lento per problemi mal condizionati, mentre il gradiente %|coniugato costruisce direzioni più efficaci. %@TOPIC 20 %|DOMANDA DI RIPASSO AGGIUNTA %|DOMANDA: Illustra Metodo del gradiente coniugato (CG): definizioni, formule, ipotesi, proprieta e %|limiti. %| %|RISPOSTA: %|Per A simmetrica definita positiva, il gradiente coniugato sceglie direzioni di ricerca A-coniugate, %|cioè p_(i)^(T)Ap_(j)=0 per i≠j (in aritmetica esatta). La forma classica è: %|r_(0)=b−Ax_(0), p_(0)=r_(0). %|α_(k)=(r_(k)^(T)r_(k))/(p_(k)^(T)Ap_(k)), x_(k+1)=x_(k)+α_(k)p_(k), r_(k+1)=r_(k)−α_(k)Ap_(k). %|β_(k)=(r_(k+1)^(T)r_(k+1))/(r_(k)^(T)r_(k)),  p_(k+1)=r_(k+1)+β_(k)p_(k). %|In aritmetica esatta CG trova la soluzione in al più n passi; in aritmetica finita si usa un %|criterio d’arresto sul residuo. Il numero di iterazioni necessario dipende dallo spettro e dal %|condizionamento; il precondizionamento può migliorare la convergenza [I]. %|Risposta modello — «Gradiente e gradiente coniugato: differenze» %|Entrambi risolvono sistemi con matrice simmetrica definita positiva interpretandoli come problemi di %|minimizzazione quadratica. Il gradiente classico procede lungo il residuo, che è la direzione %|opposta al gradiente, e sceglie ogni volta il passo ottimale su quella retta. Il gradiente coniugato %|usa invece direzioni costruite per essere coniugate rispetto alla matrice: ciò evita di perdere il %|progresso compiuto lungo le direzioni precedenti. In aritmetica esatta termina in al più n %|iterazioni, mentre nella pratica l’arrotondamento porta a controllare il residuo. CG è spesso %|preferibile per grandi matrici sparse simmetriche definite positive. %@TOPIC 21 %|DOMANDA DI RIPASSO AGGIUNTA %|DOMANDA: Illustra Sistemi sovradeterminati e minimi quadrati: definizioni, formule, ipotesi, %|proprieta e limiti. %| %|RISPOSTA: %|Per A∈R^(m×n), con m>n, il sistema Ax=b di solito non ammette una soluzione esatta. Si cerca allora: %|x^(*)=argmin_{x}∥Ax−b∥_(2)^(2). %|Derivando la funzione obiettivo si ottengono le equazioni normali: %|A^(T)Ax=A^(T)b. %|Se A ha rango colonna pieno (rankA=n), la soluzione ai minimi quadrati è unica. Le equazioni normali %|sono matematicamente corrette, ma formare A^(T)A può peggiorare il condizionamento: in norma 2, con %|rango pieno, κ_(2)(A^(T)A)=κ_(2)(A)^(2). %@TOPIC 22 %|DOMANDA DI RIPASSO AGGIUNTA %|DOMANDA: Illustra Fattorizzazione QR per i minimi quadrati: definizioni, formule, ipotesi, proprieta %|e limiti. %| %|RISPOSTA: %|Per A∈R^(m×n) di rango colonna pieno, con m≥n, la QR ridotta scrive: %|A=QR, Q∈R^(m×n), Q^(T)Q=I_(n), R∈R^(n×n) triangolare superiore. %|Il problema min∥Ax−b∥_(2) si riconduce al sistema triangolare: %|Rx=Q^(T)b. %|Poiché Q ha colonne ortonormali, la fattorizzazione QR, calcolata con algoritmi stabili come le %|riflessioni di Householder, è in genere preferibile alla risoluzione diretta delle equazioni %|normali. Se A è a rango carente, occorrono accorgimenti come QR con pivotazione o SVD [I]. %|Risposta modello — «Che cosa sono i minimi quadrati e perché si usa QR?» %|Un sistema sovradeterminato contiene più equazioni che incognite e in generale non può essere %|soddisfatto esattamente. La soluzione ai minimi quadrati minimizza la norma euclidea del residuo. %|Derivando la funzione obiettivo si ottengono le equazioni normali A^(T)Ax=A^(T)b. Tuttavia il %|prodotto A^(T)A può amplificare il condizionamento. La fattorizzazione QR permette di esprimere la %|matrice come prodotto di una matrice a colonne ortonormali e una triangolare superiore; con la QR %|ridotta il problema si risolve tramite Rx=Q^(T)b. Si ottiene così una procedura numericamente più %|robusta, soprattutto quando i dati non sono ben condizionati. %| %|Capitolo 3 — Approssimazione di funzioni e interpolazione [P: settimane 8–10] %@TOPIC 23 %|DOMANDA DI RIPASSO AGGIUNTA %|DOMANDA: Illustra Approssimazione nel senso dei minimi quadrati: definizioni, formule, ipotesi, %|proprieta e limiti. %| %|RISPOSTA: %|L’approssimazione cerca una funzione semplice che descriva un insieme di dati, senza imporre il %|passaggio per tutti i punti. Dati (x_(i),y_(i)), i=1,…,N, e un modello lineare nei parametri %|p(x)=∑[j=0;m] a_(j)ϕ_(j)(x), %|si minimizza la somma dei quadrati: %|min_{a_(0),…,a_(m)}∑[i=1;N] (p(x_(i))−y_(i))^(2). %|Definiamo la matrice di progetto X_(ij)=ϕ_(j−1)(x_(i)) (indici i=1,…,N e j=1,…,m+1). Il problema %|diventa: %|min_{a}∥Xa−y∥_(2)^(2);  X^(T)Xa=X^(T)y. %|Per approssimazione polinomiale si sceglie ϕ_(j)(x)=x^(j) e la matrice X ha struttura di %|Vandermonde. La stabilità dipende anche dalla scelta di base, dal grado e dalla distribuzione dei %|nodi. La QR è generalmente preferibile alle equazioni normali numericamente. %|Esempio: regressione lineare. Per p(x)=a_(0)+a_(1)x, il modello approssima la tendenza media anziché %|passare esattamente per ogni coppia osservata. %|Risposta modello — «Che differenza c’è fra approssimazione ai minimi quadrati e interpolazione?» %|Nell’approssimazione ai minimi quadrati si cerca una funzione appartenente a una classe prefissata %|che renda minima la somma dei quadrati delle differenze rispetto ai dati; non è necessario passare %|esattamente per i punti. Nell’interpolazione, invece, si impone il passaggio per tutti i nodi. I %|minimi quadrati sono particolarmente adatti a dati rumorosi o sovrabbondanti, mentre %|l’interpolazione è appropriata quando si vogliono riprodurre esattamente i valori noti. Per un %|modello lineare nei coefficienti il problema di minimi quadrati diventa un sistema sovradeterminato %|che può essere risolto efficacemente mediante QR. %@TOPIC 24 %|DOMANDA DI RIPASSO AGGIUNTA %|DOMANDA: Illustra Interpolazione polinomiale globale di Lagrange: definizioni, formule, ipotesi, %|proprieta e limiti. %| %|RISPOSTA: %|Dati n+1 nodi distinti x_(0),…,x_(n) e valori y_(i)=f(x_(i)), esiste un unico polinomio p_(n) di %|grado al più n tale che p_(n)(x_(i))=y_(i). Nella forma di Lagrange: %|p_(n)(x)=∑[i=0;n] y_(i)L_(i)(x),  L_(i)(x)=∏[j=0; j≠i;n] (x−x_(j))/(x_(i)−x_(j)). %|Le funzioni fondamentali soddisfano L_(i)(x_(j))=δ_(ij), che garantisce l’interpolazione. L’unicità %|deriva dal fatto che la differenza fra due polinomi di grado ≤n che si annullano in n+1 nodi %|distinti è identicamente nulla. %|Resto dell’interpolazione. Se f∈C^(n+1)([a,b]) e x appartiene all’intervallo che contiene i nodi, %|esiste ξ_(x) tale che: %|f(x)−p_(n)(x)=(f^((n+1))(ξ_(x)))/((n+1)!)∏[i=0;n] (x−x_(i)). %|Il resto dipende sia dalle derivate di f sia dalla distribuzione dei nodi. L’interpolazione non %|migliora necessariamente aumentando il grado su nodi equispaziati: può comparire il fenomeno di %|Runge, con oscillazioni soprattutto agli estremi. Nodi di Chebyshev mitigano il problema [I]. %|Risposta modello — «Mi parli dell’interpolazione di Lagrange» %|L’interpolazione polinomiale di Lagrange costruisce un polinomio di grado al più n che assume %|esattamente i valori assegnati in n+1 nodi distinti. Il polinomio è espresso come somma dei dati %|moltiplicati per i polinomi fondamentali L_(i), ciascuno dei quali vale uno nel proprio nodo e zero %|negli altri. Il polinomio esiste ed è unico. L’errore è espresso tramite la derivata di ordine n+1 %|della funzione e il prodotto delle distanze dai nodi; quindi dipende dalla regolarità della funzione %|e dalla scelta dei nodi. Con molti nodi equispaziati si possono avere forti oscillazioni, perciò in %|pratica spesso conviene ricorrere a interpolazione composita o spline. %@TOPIC 25 %|DOMANDA DI RIPASSO AGGIUNTA %|DOMANDA: Illustra Formula baricentrica di Lagrange [P: cenno]: definizioni, formule, ipotesi, %|proprieta e limiti. %| %|RISPOSTA: %|La forma baricentrica è un modo più efficiente e generalmente più stabile di valutare il medesimo %|polinomio interpolatore. Ponendo i pesi: %|w_(i)=(1)/(∏[j≠i;​] (x_(i)−x_(j))), %|per x diverso dai nodi: %|p_(n)(x)=(∑[i=0;n] (w_(i)y_(i))/(x−x_(i)))/(∑[i=0;n] (w_(i))/(x−x_(i))). %|Se x=x_(i), per definizione si pone p_(n)(x_(i))=y_(i), evitando divisioni per zero. I pesi %|dipendono dai nodi e possono essere riutilizzati per più valutazioni. %@TOPIC 26 %|DOMANDA DI RIPASSO AGGIUNTA %|DOMANDA: Illustra Interpolazione composita e stima dell’errore: definizioni, formule, ipotesi, %|proprieta e limiti. %| %|RISPOSTA: %|Invece di costruire un unico polinomio di grado elevato, si partiziona [a,b]: %|a=x_(0)1 e converge linearmente con fattore (m−1)/m. Newton modificato %|x_(k+1)=x_(k)−mf(x_(k))/f′(x_(k)), quando m è nota, può ripristinare il comportamento quadratico. A %|differenza della bisezione, Newton e secanti non hanno una garanzia di convergenza globale generica. %|Risposta completa da scrivere. I metodi di Newton e delle secanti sono algoritmi iterativi per %|approssimare gli zeri di equazioni non lineari. Newton usa la tangente al grafico di f nel punto %|corrente e ricava l’approssimazione successiva dall’intersezione con l’asse delle ascisse, tramite %|x_(k+1)=x_(k)−f(x_(k))/f′(x_(k)). Il metodo delle secanti sostituisce la derivata con una differenza %|divisa calcolata su due iterate e quindi evita il calcolo di f′. Per una radice semplice, regolarità %|sufficiente e inizializzazione vicina alla radice, Newton è quadraticamente convergente e le secanti %|sono superlineari, di ordine circa 1.618. Entrambi possono fallire con punti iniziali sfavorevoli o %|denominatori nulli. Poiché l’errore esatto non è noto, l’arresto pratico si basa sul residuo e/o %|sull’incremento, insieme a un limite massimo di iterazioni; è bene ricordare che un residuo piccolo %|non garantisce in generale errore piccolo. %@TOPIC 50 %|TRACCIA RIPORTATA NELLA DISPENSA %|DOMANDA: Illustra Traccia G — Metodi diretti e iterativi per sistemi lineari: quale scegliere?: %|definizioni, formule, ipotesi, proprieta e limiti. %| %|RISPOSTA: %|Origine. Domanda di teoria nell’appello del 14/04/2023. %|1. Metodi diretti. Eliminazione di Gauss, LU, Cholesky, QR producono, in aritmetica esatta e se %|applicabili, la soluzione in un numero finito di operazioni senza un criterio di arresto iterativo. %|Sono caratterizzati dalla fattorizzazione/eliminazione e richiedono normalmente O(n^(3)) operazioni %|per matrici dense quadrate. %|2. Metodi iterativi. Partono da x_(0) e costruiscono approssimazioni x_(1),x_(2),… monitorando un %|residuo. Gradiente e gradiente coniugato sono stati trattati per matrici simmetriche definite %|positive; richiedono soprattutto prodotti matrice-vettore e possono sfruttare la sparsità. %|3. Quando scegliere. Diretti: dimensioni moderate, molteplici termini noti, richiesta di elevata %|robustezza e fattorizzazione gestibile in memoria. Iterativi: grandi sistemi sparsi, memoria %|limitata, buona struttura spettrale, richiesta di accuratezza moderata, eventuale precondizionatore; %|il vantaggio dipende dalle iterazioni necessarie e dal costo di ogni prodotto Ax. %|4. Esempio diretto da illustrare. Gauss trasforma il sistema in uno triangolare tramite eliminazione %|e poi applica sostituzione all’indietro. La pivotazione parziale riduce i problemi dovuti a pivot %|nulli o piccoli. Alternativamente, LU con pivotazione fattorizza PA=LU e risolve due sistemi %|triangolari; con matrice simmetrica definita positiva è disponibile Cholesky A=LL^(T). %|5. Confronto teorico. Non esiste una regola assoluta «iterativo sempre più veloce». Con matrici %|sparse, i diretti possono creare fill-in; gli iterativi evitano fattorizzazioni, ma un %|condizionamento sfavorevole può rallentarli. Per i metodi del gradiente la matrice simmetrica %|definita positiva è un’ipotesi fondamentale. %|Risposta completa da scrivere. I metodi diretti per Ax=b, come Gauss, LU e Cholesky, cercano la %|soluzione attraverso una sequenza finita di operazioni algebriche, spesso trasformando il sistema in %|sistemi triangolari. I metodi iterativi, come il gradiente e il gradiente coniugato, generano %|approssimazioni successive a partire da un punto iniziale e si fermano quando il residuo soddisfa un %|criterio. I diretti sono spesso preferibili su matrici dense di dimensioni moderate o quando si %|risolve ripetutamente il sistema con la stessa matrice e termini noti diversi. Gli iterativi sono %|particolarmente interessanti per grandi matrici sparse, perché richiedono memoria contenuta e %|sfruttano il prodotto matrice-vettore, anche se il condizionamento può influire sulla velocità di %|convergenza. Una tecnica diretta esemplare è la fattorizzazione LU con pivotazione PA=LU, seguita %|dalla soluzione di due sistemi triangolari. %@TOPIC 51 %|TRACCIA RIPORTATA NELLA DISPENSA %|DOMANDA: Illustra Traccia H — Risposte brevi e mirate a possibili sottodomande: definizioni, %|formule, ipotesi, proprieta e limiti. %| %|RISPOSTA: %|«Come mai una matrice di Vandermonde può creare problemi?» Perché al crescere del grado e per scelte %|sfavorevoli dei nodi diventa mal condizionata; l’esistenza algebrica del polinomio interpolatore non %|ne garantisce una valutazione numericamente stabile nella base dei monomi. Si possono scegliere basi %|migliori e nodi adeguati. %|«Che differenza c’è fra errore d’interpolazione e errore di arrotondamento?» Il primo dipende dalla %|funzione e dalla scelta dei nodi/ordine; il secondo dall’algoritmo e dalla precisione macchina. Una %|base numericamente instabile può far prevalere l’errore di arrotondamento anche se la formula %|teorica dell’interpolazione è accurata. %|«Perché il gradiente coniugato è spesso più veloce del gradiente semplice?» Perché costruisce %|direzioni A-coniugate che evitano di riottimizzare lungo direzioni già percorse, mentre il gradiente %|tende a zigzagare in problemi mal condizionati. CG per A simmetrica definita positiva termina in al %|più n passi soltanto in aritmetica esatta. %|«Se il numero di condizionamento è alto, basta diminuire il residuo?» Non sempre. La relazione %|∥e∥/∥x∥≤κ(A)∥r∥/∥b∥ mostra quanto severo debba essere il residuo relativo per garantire un certo %|errore relativo. %|«Perché Simpson usa tre nodi ma ha grado di esattezza 3?» Per la simmetria dei nodi e dei pesi, che %|rende nullo il contributo degli errori sui termini cubici; l’interpolante costruito è quadratico, ma %|la formula integrale è esatta anche sui cubici. %|«Una soluzione con passo più piccolo è sempre più accurata?» Non necessariamente, perché %|l’arrotondamento può diventare rilevante e soprattutto perché un passo che soddisfa la precisione %|non implica automaticamente la stabilità per metodi espliciti; bisogna verificare entrambe le %|condizioni. %|«Come applicare la stabilità assoluta a un sistema di EDO?» Per y′=Ay si valutano gli autovalori %|λ_(j) della matrice e si richiede hλ_(j) nella regione di stabilità del metodo. Per matrici non %|normali possono esserci anche effetti transitori non descritti dal solo spettro. %|«Perché l’errore locale e l’errore globale hanno un ordine diverso?» Nel calcolo su O(1/h) passi il %|difetto locale di ordine O(h^(p+1)) può accumularsi, dando tipicamente errore globale O(h^(p)) sotto %|ipotesi di stabilità; ciò non autorizza a moltiplicare errori senza controllare il loro trasporto. %@TOPIC 52 %|DOMANDA (riformulata): Definisci il condizionamento e spiega le stime in cui interviene. %|FONTE: https://paola-gervasio.unibs.it/CS/temi/app170123.pdf ; Domanda 1 %|RISPOSTA: %|Dato un sistema quadrato Ax=b, A∈R^(n×n), le seguenti condizioni sono equivalenti: A invertibile; %|detA≠0; rango n; il sistema omogeneo Ax=0 ha solo soluzione nulla; per ogni b la soluzione è unica. %|Il sistema può nascere da modelli fisici, discretizzazione di equazioni, ottimizzazione e Newton per %|sistemi non lineari. %|Norme matriciali indotte: %|∥A∥=max_{x≠0}(∥Ax∥)/(∥x∥), ∥A∥_(∞)=max_{i}∑[j;​] |a_(ij)|, ∥A∥_(1)=max_{j}∑[i;​] |a_(ij)|. %|Per matrice invertibile il numero di condizionamento, rispetto alla norma scelta, è: %|κ(A)=∥A∥ ∥A^(−1)∥≥1. %|Se tilde(x) è approssimazione e r=b−Atilde(x) è il residuo, allora x−tilde(x)=A^(−1)r, perciò: %|∥x−tilde(x)∥≤∥A^(−1)∥ ∥r∥. %|Inoltre, con b=Ax≠0: %|(∥x−tilde(x)∥)/(∥x∥)≤κ(A)(∥r∥)/(∥b∥). %|Il residuo piccolo non basta a garantire errore relativo piccolo quando κ(A) è grande. Per una %|perturbazione solo nel termine noto A(x+Δx)=b+Δb: %|(∥Δx∥)/(∥x∥)≤κ(A)(∥Δb∥)/(∥b∥). %|Interpretazione: il condizionamento appartiene al problema, non al metodo scelto per risolverlo. La %|presenza di errori di arrotondamento rende importante usare algoritmi stabili. %|Risposta modello — «Mi spieghi il numero di condizionamento di una matrice» %|Un sistema lineare quadrato Ax=b ammette una soluzione unica se e solo se A è non singolare. Il %|numero di condizionamento κ(A)=∥A∥∥A^(−1)∥ quantifica quanto la soluzione può essere sensibile a %|piccole perturbazioni dei dati. Se è vicino a uno, il problema è relativamente ben condizionato; se %|è molto grande, anche piccole variazioni possono produrre errori importanti. Il residuo %|r=b−Atilde(x) permette di misurare quanto bene la soluzione approssimata soddisfa le equazioni, ma %|un residuo piccolo non garantisce da solo una soluzione accurata: il legame con l’errore relativo %|coinvolge proprio il numero di condizionamento. Per questo condizionamento e stabilità %|dell’algoritmo devono essere valutati separatamente. %| %|1. Definizione. Per A∈R^(n×n) invertibile e una norma matriciale indotta: %|κ(A)=∥A∥ ∥A^(−1)∥. %|Il numero dipende dalla norma; per la norma 2 è il rapporto tra il massimo e il minimo valore %|singolare: κ_(2)(A)=σ_(max)(A)/σ_(min)(A). È sempre almeno uno; se A è singolare si considera %|infinito. %|2. Perturbazione del termine noto. Se Ax=b e A(x+Δx)=b+Δb, allora AΔx=Δb. Da ∥Δx∥≤∥A^(−1)∥∥Δb∥ e %|∥b∥≤∥A∥∥x∥ segue: %|(∥Δx∥)/(∥x∥)≤κ(A)(∥Δb∥)/(∥b∥)  (b≠0). %|3. Legame fra residuo ed errore. Sia tilde(x) il vettore calcolato, r=b−Atilde(x) e e=x−tilde(x). %|Poiché Ae=r: %|(∥e∥)/(∥x∥)≤κ(A)(∥r∥)/(∥b∥). %|Questa è la ragione per cui un residuo relativo piccolo può non bastare quando la matrice è mal %|condizionata. %|4. Perturbazioni della matrice. Se (A+ΔA)(x+Δx)=b+Δb e ∥A^(−1)ΔA∥<1, si ricava la stima generale: %|(∥Δx∥)/(∥x∥)≤(κ(A))/(1−κ(A)δ_(A))(δ_(A)+δ_(b)), δ_(A)=(∥ΔA∥)/(∥A∥), δ_(b)=(∥Δb∥)/(∥b∥), %|purché κ(A)δ_(A)<1 e b≠0. È una stima a priori sulla sensibilità della soluzione. %|5. Interpretazione. Condizionamento alto è una proprietà del problema, non necessariamente un %|difetto del metodo. Un algoritmo stabile applicato a un sistema mal condizionato può comunque %|produrre un errore significativo. Il condizionamento spiega anche il comportamento dei metodi %|iterativi e il rischio delle equazioni normali per minimi quadrati: κ_(2)(A^(T)A)=κ_(2)(A)^(2) se A %|ha rango di colonna completo. %|Risposta completa da scrivere. Il numero di condizionamento di una matrice invertibile è il prodotto %|delle norme della matrice e della sua inversa. Misura la sensibilità della soluzione del sistema %|Ax=b a perturbazioni dei dati. Se il numero è elevato, piccoli errori di arrotondamento o nei dati %|possono essere amplificati nella soluzione. Esso interviene nella stima dell’errore relativo dovuto %|a perturbazioni di b e nella stima a posteriori che lega il residuo relativo all’errore relativo %|della soluzione. È quindi scorretto identificare automaticamente un residuo piccolo con una %|soluzione accurata. Il condizionamento dipende dal problema matematico, mentre la stabilità numerica %|dipende dall’algoritmo impiegato. %@TOPIC 53 %|DOMANDA (riformulata): Spiega Newton, scelta iniziale, convergenza e arresto. %|FONTE: https://paola-gervasio.unibs.it/CS/temi/app170123.pdf ; Domanda 2 %|RISPOSTA: %|Si parte da x_(0) e si sostituisce localmente f con la sua linearizzazione: %|f(x_(k)+s)≈f(x_(k))+f′(x_(k))s. %|Imponendo che l’approssimazione lineare sia nulla e assumendo f′(x_(k))≠0: %|x_(k+1)=x_(k)−(f(x_(k)))/(f′(x_(k))). %|Interpretazione geometrica: x_(k+1) è l’intersezione con l’asse orizzontale della tangente al %|grafico nel punto (x_(k),f(x_(k))). %|Convergenza locale. Se f è abbastanza regolare (ad esempio C^(2) in un intorno della radice), f(α)=0 %|e f′(α)≠0, allora a partire da x_(0) sufficientemente vicino il metodo converge quadraticamente: %|e_(k+1)=(f″(α))/(2f′(α))e_(k)^(2)+o(e_(k)^(2)). %|Se f″(α)=0, il termine dominante può avere ordine superiore. La formula richiede che f′(x_(k)) non %|sia nullo durante l’iterazione. Un punto iniziale poco favorevole può provocare oscillazioni, %|divergenza o convergenza a un’altra radice. %|Radici multiple. Se f(x)=(x−α)^(m)q(x), q(α)≠0, m>1, Newton standard è tipicamente soltanto lineare, %|con fattore asintotico (m−1)/m. Se la molteplicità è nota: %|x_(k+1)=x_(k)−m(f(x_(k)))/(f′(x_(k))) %|ripristina sotto adeguate ipotesi la convergenza quadratica locale. [L/I: il laboratorio analizza le %|radici multiple e usa anche Newton modificato.] %|Risposta modello — «Mi parli di Newton per il calcolo delle radici» %|Newton è un metodo iterativo per risolvere f(x)=0. A partire da un punto iniziale sostituisce la %|funzione con la tangente, cioè con lo sviluppo di Taylor al primo ordine. Ponendo uguale a zero la %|retta si ricava l’aggiornamento x_(k+1)=x_(k)−f(x_(k))/f′(x_(k)). Per una radice semplice, con %|funzione sufficientemente regolare e punto iniziale sufficientemente vicino, il metodo converge %|localmente con ordine quadratico: l’errore al passo successivo è proporzionale al quadrato di quello %|precedente. È quindi molto rapido nella fase finale. Rispetto alla bisezione non richiede di %|racchiudere la radice in un intervallo con cambiamento di segno, ma necessita del calcolo della %|derivata e non garantisce la convergenza globale. In presenza di una radice multipla Newton standard %|perde generalmente l’ordine quadratico; se conosco la molteplicità posso utilizzare Newton %|modificato. %| %|Poiché α non è noto, l’errore |x_(k)−α| non è direttamente calcolabile. Si usano ad esempio: %||x_(k+1)−x_(k)|≤tol_(x),  |f(x_(k+1))|≤tol_(f), %|oppure il criterio relativo sull’incremento: %|(|x_(k+1)−x_(k)|)/(max(1,|x_(k+1)|))≤tol. %|Cautela: un incremento piccolo può derivare da stagnazione; un residuo piccolo non garantisce errore %|piccolo se |f′(α)| è piccolo. Localmente, per una radice semplice: %||x−α|≈(|f(x)|)/(|f′(α)|). %|Affiancare un limite k_(max) per evitare cicli indefiniti e testare eventuali derivate o %|denominatori molto piccoli. %@TOPIC 54 %|DOMANDA (riformulata): Dati, basi monomiale e di Lagrange, scelta dei nodi e applicazioni. %|FONTE: https://paola-gervasio.unibs.it/CS/temi/app140423.pdf ; Domanda 1 %|RISPOSTA: %|Dati n+1 nodi distinti x_(0),…,x_(n) e valori y_(i)=f(x_(i)), esiste un unico polinomio p_(n) di %|grado al più n tale che p_(n)(x_(i))=y_(i). Nella forma di Lagrange: %|p_(n)(x)=∑[i=0;n] y_(i)L_(i)(x),  L_(i)(x)=∏[j=0; j≠i;n] (x−x_(j))/(x_(i)−x_(j)). %|Le funzioni fondamentali soddisfano L_(i)(x_(j))=δ_(ij), che garantisce l’interpolazione. L’unicità %|deriva dal fatto che la differenza fra due polinomi di grado ≤n che si annullano in n+1 nodi %|distinti è identicamente nulla. %|Resto dell’interpolazione. Se f∈C^(n+1)([a,b]) e x appartiene all’intervallo che contiene i nodi, %|esiste ξ_(x) tale che: %|f(x)−p_(n)(x)=(f^((n+1))(ξ_(x)))/((n+1)!)∏[i=0;n] (x−x_(i)). %|Il resto dipende sia dalle derivate di f sia dalla distribuzione dei nodi. L’interpolazione non %|migliora necessariamente aumentando il grado su nodi equispaziati: può comparire il fenomeno di %|Runge, con oscillazioni soprattutto agli estremi. Nodi di Chebyshev mitigano il problema [I]. %|Risposta modello — «Mi parli dell’interpolazione di Lagrange» %|L’interpolazione polinomiale di Lagrange costruisce un polinomio di grado al più n che assume %|esattamente i valori assegnati in n+1 nodi distinti. Il polinomio è espresso come somma dei dati %|moltiplicati per i polinomi fondamentali L_(i), ciascuno dei quali vale uno nel proprio nodo e zero %|negli altri. Il polinomio esiste ed è unico. L’errore è espresso tramite la derivata di ordine n+1 %|della funzione e il prodotto delle distanze dai nodi; quindi dipende dalla regolarità della funzione %|e dalla scelta dei nodi. Con molti nodi equispaziati si possono avere forti oscillazioni, perciò in %|pratica spesso conviene ricorrere a interpolazione composita o spline. %| %|1. Problema. Dati n+1 nodi distinti x_(0),…,x_(n) e valori y_(i)=f(x_(i)), si cerca un polinomio %|p_(n)∈P_(n) tale che p_(n)(x_(i))=y_(i). Tale interpolatore esiste ed è unico. %|2. Base dei monomi. Si scrive: %|p_(n)(x)=a_(0)+a_(1)x+⋯+a_(n)x^(n). %|Imponendo i vincoli nei nodi otteniamo il sistema di Vandermonde Va=y, con V_(ij)=x_(i)^(j) (indici %|da 0 a n). I coefficienti a_(j) si trovano risolvendo il sistema lineare. Anche se V è invertibile %|per nodi distinti, può essere numericamente mal condizionata. %|3. Base di Lagrange. Definiamo: %|L_(i)(x)=∏[0≤j≤n; j≠i;​] (x−x_(j))/(x_(i)−x_(j)),  L_(i)(x_(j))=δ_(ij). %|La rappresentazione è: %|p_(n)(x)=∑[i=0;n] y_(i)L_(i)(x). %|I coefficienti nella base di Lagrange sono direttamente y_(i); il lavoro è invece calcolare e %|valutare le funzioni di base. Nella base monomiale occorre risolvere un sistema per trovare i %|coefficienti. %|4. Errore di interpolazione. Se f∈C^(n+1)([a,b]), per x∈[a,b] esiste ξ_(x) tale che: %|f(x)−p_(n)(x)=(f^((n+1))(ξ_(x)))/((n+1)!)∏[i=0;n] (x−x_(i)). %|La scelta dei nodi è decisiva. Aumentare il grado con nodi equispaziati non garantisce convergenza %|uniforme: può comparire il fenomeno di Runge, con grandi oscillazioni ai bordi. Alternative: nodi di %|Chebyshev e interpolazione composita a basso grado. Le spline cubiche controllano la regolarità tra %|intervalli. %|5. Applicazioni nel corso. Le formule di quadratura interpolatorie si ottengono integrando p_(n); %|differenze finite si ricavano derivando un interpolante locale; l’interpolazione è utile per %|approssimare funzioni e dati misurati. %|Risposta completa da scrivere. L’interpolazione di Lagrange consiste nel costruire l’unico polinomio %|di grado al più n che passa per n+1 punti con ascisse distinte. Nella base monomiale il polinomio ha %|coefficienti incogniti e questi si determinano risolvendo un sistema di Vandermonde. Nella base di %|Lagrange, invece, il polinomio si ottiene come combinazione delle funzioni cardinali L_(i), che %|valgono uno nel nodo associato e zero negli altri: i coefficienti sono immediatamente i dati y_(i). %|L’errore dipende dalla derivata (n+1)-esima della funzione e dal prodotto delle distanze dai nodi. I %|nodi equispaziati possono produrre oscillazioni e mancata convergenza, soprattutto per gradi %|elevati; per evitarlo si scelgono nodi più adatti oppure interpolanti a tratti. L’interpolazione %|costituisce la base delle formule di quadratura e di derivazione numerica. %@TOPIC 55 %|DOMANDA (riformulata): Confronta metodi diretti e iterativi e illustra un metodo diretto e le sue %|ipotesi. %|FONTE: https://paola-gervasio.unibs.it/CS/temi/app140423.pdf ; Domanda 2 %|RISPOSTA: %|Origine. Domanda di teoria nell’appello del 14/04/2023. %|1. Metodi diretti. Eliminazione di Gauss, LU, Cholesky, QR producono, in aritmetica esatta e se %|applicabili, la soluzione in un numero finito di operazioni senza un criterio di arresto iterativo. %|Sono caratterizzati dalla fattorizzazione/eliminazione e richiedono normalmente O(n^(3)) operazioni %|per matrici dense quadrate. %|2. Metodi iterativi. Partono da x_(0) e costruiscono approssimazioni x_(1),x_(2),… monitorando un %|residuo. Gradiente e gradiente coniugato sono stati trattati per matrici simmetriche definite %|positive; richiedono soprattutto prodotti matrice-vettore e possono sfruttare la sparsità. %|3. Quando scegliere. Diretti: dimensioni moderate, molteplici termini noti, richiesta di elevata %|robustezza e fattorizzazione gestibile in memoria. Iterativi: grandi sistemi sparsi, memoria %|limitata, buona struttura spettrale, richiesta di accuratezza moderata, eventuale precondizionatore; %|il vantaggio dipende dalle iterazioni necessarie e dal costo di ogni prodotto Ax. %|4. Esempio diretto da illustrare. Gauss trasforma il sistema in uno triangolare tramite eliminazione %|e poi applica sostituzione all’indietro. La pivotazione parziale riduce i problemi dovuti a pivot %|nulli o piccoli. Alternativamente, LU con pivotazione fattorizza PA=LU e risolve due sistemi %|triangolari; con matrice simmetrica definita positiva è disponibile Cholesky A=LL^(T). %|5. Confronto teorico. Non esiste una regola assoluta «iterativo sempre più veloce». Con matrici %|sparse, i diretti possono creare fill-in; gli iterativi evitano fattorizzazioni, ma un %|condizionamento sfavorevole può rallentarli. Per i metodi del gradiente la matrice simmetrica %|definita positiva è un’ipotesi fondamentale. %|Risposta completa da scrivere. I metodi diretti per Ax=b, come Gauss, LU e Cholesky, cercano la %|soluzione attraverso una sequenza finita di operazioni algebriche, spesso trasformando il sistema in %|sistemi triangolari. I metodi iterativi, come il gradiente e il gradiente coniugato, generano %|approssimazioni successive a partire da un punto iniziale e si fermano quando il residuo soddisfa un %|criterio. I diretti sono spesso preferibili su matrici dense di dimensioni moderate o quando si %|risolve ripetutamente il sistema con la stessa matrice e termini noti diversi. Gli iterativi sono %|particolarmente interessanti per grandi matrici sparse, perché richiedono memoria contenuta e %|sfruttano il prodotto matrice-vettore, anche se il condizionamento può influire sulla velocità di %|convergenza. Una tecnica diretta esemplare è la fattorizzazione LU con pivotazione PA=LU, seguita %|dalla soluzione di due sistemi triangolari. %| %|Si cerca una decomposizione: %|A=LU, %|con L triangolare inferiore (spesso con diagonale unitaria) e U superiore. È possibile senza scambi %|di riga se i pivot che si incontrano non si annullano; una condizione sufficiente classica è che i %|minori principali iniziali siano tutti non nulli. Con pivotazione per righe si ottiene invece: %|PA=LU, %|con P matrice di permutazione. Per risolvere Ax=b si procede con due sistemi triangolari: %|Ly=Pb,  Ux=y. %|Vantaggio: se la matrice A resta la stessa e cambiano i termini noti b, la fattorizzazione si esegue %|una volta sola; poi ogni nuovo sistema richiede solo sostituzioni triangolari. %|Determinante: se PA=LU, allora det(A)=det(P)∏[i;​] u_(ii), quando L ha diagonale unitaria. L’inversa %|si può calcolare risolvendo Ax=e_(i) per tutte le colonne, ma di norma non serve formarla per %|risolvere un singolo sistema. %|Risposta modello — «Che cos’è la fattorizzazione LU?» %|La fattorizzazione LU consiste nello scrivere una matrice quadrata come prodotto di una matrice %|triangolare inferiore e una superiore. Nasce dall’eliminazione di Gauss: i moltiplicatori sono %|memorizzati nella parte inferiore e la matrice trasformata nella parte superiore. Una volta ottenuti %|L e U, risolvo il sistema con una sostituzione in avanti e una all’indietro. Se sono necessari %|scambi di righe, la forma corretta è PA=LU, dove P registra le permutazioni. Il principale vantaggio %|è l’efficienza quando si devono risolvere numerosi sistemi con la stessa matrice e termini noti %|diversi. %@TOPIC 56 %|DOMANDA (riformulata): Newton scalare e vettoriale: formula, convergenza e costo per iterazione. %|FONTE: https://paola-gervasio.unibs.it/CS/temi/app190723.pdf ; Domanda 1 %|RISPOSTA: %|Si parte da x_(0) e si sostituisce localmente f con la sua linearizzazione: %|f(x_(k)+s)≈f(x_(k))+f′(x_(k))s. %|Imponendo che l’approssimazione lineare sia nulla e assumendo f′(x_(k))≠0: %|x_(k+1)=x_(k)−(f(x_(k)))/(f′(x_(k))). %|Interpretazione geometrica: x_(k+1) è l’intersezione con l’asse orizzontale della tangente al %|grafico nel punto (x_(k),f(x_(k))). %|Convergenza locale. Se f è abbastanza regolare (ad esempio C^(2) in un intorno della radice), f(α)=0 %|e f′(α)≠0, allora a partire da x_(0) sufficientemente vicino il metodo converge quadraticamente: %|e_(k+1)=(f″(α))/(2f′(α))e_(k)^(2)+o(e_(k)^(2)). %|Se f″(α)=0, il termine dominante può avere ordine superiore. La formula richiede che f′(x_(k)) non %|sia nullo durante l’iterazione. Un punto iniziale poco favorevole può provocare oscillazioni, %|divergenza o convergenza a un’altra radice. %|Radici multiple. Se f(x)=(x−α)^(m)q(x), q(α)≠0, m>1, Newton standard è tipicamente soltanto lineare, %|con fattore asintotico (m−1)/m. Se la molteplicità è nota: %|x_(k+1)=x_(k)−m(f(x_(k)))/(f′(x_(k))) %|ripristina sotto adeguate ipotesi la convergenza quadratica locale. [L/I: il laboratorio analizza le %|radici multiple e usa anche Newton modificato.] %|Risposta modello — «Mi parli di Newton per il calcolo delle radici» %|Newton è un metodo iterativo per risolvere f(x)=0. A partire da un punto iniziale sostituisce la %|funzione con la tangente, cioè con lo sviluppo di Taylor al primo ordine. Ponendo uguale a zero la %|retta si ricava l’aggiornamento x_(k+1)=x_(k)−f(x_(k))/f′(x_(k)). Per una radice semplice, con %|funzione sufficientemente regolare e punto iniziale sufficientemente vicino, il metodo converge %|localmente con ordine quadratico: l’errore al passo successivo è proporzionale al quadrato di quello %|precedente. È quindi molto rapido nella fase finale. Rispetto alla bisezione non richiede di %|racchiudere la radice in un intervallo con cambiamento di segno, ma necessita del calcolo della %|derivata e non garantisce la convergenza globale. In presenza di una radice multipla Newton standard %|perde generalmente l’ordine quadratico; se conosco la molteplicità posso utilizzare Newton %|modificato. %| %|Si cerca x∈R^(n) tale che: %|F(x)=[f_(1)(x); ⋮; f_(n)(x)]=0. %|La Jacobiana contiene le derivate parziali: %|J_(F)(x)=[(∂f_(i))/(∂x_(j))(x)]_(i,j=1)^(n). %|Linearizziamo F(x_(k)+s)≈F(x_(k))+J_(F)(x_(k))s e imponiamo valore zero. A ogni iterazione %|risolviamo: %|J_(F)(x_(k))s_(k)=−F(x_(k)),  x_(k+1)=x_(k)+s_(k). %|È equivalente a x_(k+1)=x_(k)−J_(F)(x_(k))^(−1)F(x_(k)) solo matematicamente, quando l’inversa %|esiste. Numericamente si usa s = -J\F, senza calcolare l’inversa esplicita. Per F sufficientemente %|regolare, Jacobiana non singolare nella soluzione e dato iniziale abbastanza vicino, la convergenza %|è quadratica locale. Un criterio di arresto può richiedere ∥s_(k)∥ e/o ∥F(x_(k+1))∥ piccoli. %|ATTENZIONE al segno in MATLAB: le due implementazioni coerenti sono s = J\(-F); xnew=x+s; oppure %|z=J\F; xnew=x-z;. Fare z=J\F; xnew=x+z; non è Newton e generalmente diverge. Le formule vanno %|verificate rispetto agli script, perché alcune presentazioni schematiche possono omettere il segno %|nel testo estratto dai PDF. %|Risposta modello — «Mi parli di Newton per sistemi» %|Per risolvere un sistema non lineare si cerca il vettore che annulla contemporaneamente le %|componenti di una funzione F:R^(n)→R^(n). Newton generalizza la formula scalare sostituendo la %|derivata con la matrice Jacobiana. Tramite lo sviluppo di Taylor vettoriale al primo ordine ottengo %|il sistema lineare J_(F)(x_(k))s_(k)=−F(x_(k)). Risolvo questo sistema per calcolare la correzione e %|aggiorno x_(k+1)=x_(k)+s_(k). Non conviene formare l’inversa della Jacobiana: in MATLAB è %|preferibile il comando \. Se la Jacobiana della soluzione è non singolare e la stima iniziale è %|sufficientemente vicina, si ha convergenza quadratica locale. Il costo computazionale è maggiore del %|caso scalare, perché occorre costruire la Jacobiana e risolvere un sistema lineare a ogni %|iterazione. %|Costo: costruire F e J dipende dal problema. Con Jacobiana densa n per n, la soluzione mediante LU %|costa circa (2/3)*n^3 flop, piu O(n^2) per sostituzioni e O(n) per aggiornamento. La Jacobiana %|cambia generalmente a ogni iterazione. Sparsita o struttura possono ridurre molto il costo. %@TOPIC 57 %|DOMANDA (riformulata): Deriva e confronta Eulero avanti e indietro: convergenza, stabilita e costo. %|FONTE: https://paola-gervasio.unibs.it/CS/temi/app190723.pdf ; Domanda 2 %|RISPOSTA: %|Dallo sviluppo di Taylor y(t_(n+1))=y(t_(n))+hy′(t_(n))+O(h^(2)) e dalla relazione y′=f(t,y) %|otteniamo: %|y_(n+1)=y_(n)+hf(t_(n),y_(n)). %|Ordine: errore locale di un passo O(h^(2)), errore globale O(h) su intervalli finiti con opportune %|ipotesi di regolarità e stabilità; metodo di ordine 1. %|Vantaggi: semplicissimo ed economico. Svantaggi: accuratezza limitata e vincoli restrittivi sul %|passo per problemi rigidi (stiff). La pendenza viene valutata nel punto iniziale del passo. %|Risposta modello — «Mi parli del metodo di Eulero esplicito» %|Il metodo di Eulero esplicito approssima la soluzione del problema di Cauchy usando lo sviluppo di %|Taylor al primo ordine. La derivata della soluzione viene sostituita dalla funzione del problema %|valutata all’istante e nello stato correnti. La formula y_(n+1)=y_(n)+hf(t_(n),y_(n)) permette %|quindi di avanzare direttamente senza risolvere equazioni non lineari. Il metodo ha ordine globale %|uno, cioè l’errore su un intervallo finito decresce come il passo, nelle consuete ipotesi. È facile %|da implementare, ma può richiedere passi molto piccoli sia per l’accuratezza sia per la stabilità, %|soprattutto con dinamiche rigide. %| %|La pendenza viene valutata all’estremo finale del passo: %|y_(n+1)=y_(n)+hf(t_(n+1),y_(n+1)). %|L’incognita y_(n+1) compare da entrambe le parti, quindi a ogni passo può essere necessario %|risolvere un’equazione o un sistema non lineare, spesso con Newton. %|Ordine: globalmente 1 (nelle ipotesi standard); errore di un passo O(h^(2)). Punto di forza: buone %|proprietà di stabilità, utili per problemi stiff; in particolare è A-stabile per l’equazione test %|lineare. %|Risposta modello — «Qual è la differenza tra Eulero esplicito e implicito?» %|Eulero esplicito usa la pendenza nel punto noto t_(n),y_(n) e calcola subito lo stato successivo. %|Eulero implicito usa invece la pendenza nel punto finale t_(n+1),y_(n+1) e richiede la soluzione di %|un’equazione in cui compare il valore incognito. Entrambi sono metodi di ordine uno, ma la regione %|di stabilità dell’implicito è molto più ampia, perciò può essere preferibile per equazioni rigide. %|L’implicito è però più costoso per passo, perché comporta la risoluzione di un problema non lineare. %| %|La stabilità assoluta si studia spesso applicando il metodo all’equazione test: %|y′=λy,  Re(λ)<0. %|La soluzione esatta è y(t)=y_(0)e^(λ(t−t_(0))) e tende a zero. Il metodo produce una ricorrenza: %|y_(n+1)=R(z)y_(n),  z=hλ, %|con funzione di stabilità R(z). La regione di stabilità assoluta è S={z∈C:|R(z)|<1}, con condizioni %|aggiuntive sui punti di bordo quando necessario. %|Eulero esplicito: %|R(z)=1+z,  |1+z|<1. %|Sulla semiretta reale negativa, con λ<0: 01 e converge linearmente con fattore (m−1)/m. Newton modificato %|x_(k+1)=x_(k)−mf(x_(k))/f′(x_(k)), quando m è nota, può ripristinare il comportamento quadratico. A %|differenza della bisezione, Newton e secanti non hanno una garanzia di convergenza globale generica. %|Risposta completa da scrivere. I metodi di Newton e delle secanti sono algoritmi iterativi per %|approssimare gli zeri di equazioni non lineari. Newton usa la tangente al grafico di f nel punto %|corrente e ricava l’approssimazione successiva dall’intersezione con l’asse delle ascisse, tramite %|x_(k+1)=x_(k)−f(x_(k))/f′(x_(k)). Il metodo delle secanti sostituisce la derivata con una differenza %|divisa calcolata su due iterate e quindi evita il calcolo di f′. Per una radice semplice, regolarità %|sufficiente e inizializzazione vicina alla radice, Newton è quadraticamente convergente e le secanti %|sono superlineari, di ordine circa 1.618. Entrambi possono fallire con punti iniziali sfavorevoli o %|denominatori nulli. Poiché l’errore esatto non è noto, l’arresto pratico si basa sul residuo e/o %|sull’incremento, insieme a un limite massimo di iterazioni; è bene ricordare che un residuo piccolo %|non garantisce in generale errore piccolo. %@TOPIC 60 %|DOMANDA (riformulata): Ricava punto medio e trapezi, semplici e compositi, errori e confronto. %|Quando il punto medio e utilizzabile e i trapezi no? %|FONTE: https://paola-gervasio.unibs.it/CS/temi/app110925.pdf ; Domanda 1 %|RISPOSTA: %|Poni H=b-a e m=(a+b)/2. Punto medio: M=H*f(m). Si integra l'approssimante costante f(m); Taylor %|attorno a m mostra che il termine lineare si annulla per simmetria. Per f in C^2, %|I-M=H^3*f''(xi)/24. E una formula aperta, esatta fino al grado 1. %|Trapezi: T=H*(f(a)+f(b))/2. Si integra la retta interpolante agli estremi. I-T=-H^3*f''(xi)/12. E %|chiusa, esatta fino al grado 1. %|Con N intervalli, h=H/N: M_N=h*sum_{i=0}^{N-1} f(a+(i+1/2)*h); T_N=h*(f(a)/2+sum_{i=1}^{N-1} %|f(a+i*h)+f(b)/2). %|Posto M2=max |f''|, |I-M_N|<=H*h^2*M2/24 e |I-T_N|<=H*h^2*M2/12. Entrambe hanno ordine globale 2; %|dimezzare h riduce asintoticamente l'errore di un fattore 4. L'errore semplice e O(H^3), il grado di %|precisione e 1: sono nozioni diverse. %|Per f convessa, il punto medio sottostima e i trapezi sovrastimano. A parita di suddivisione, la %|maggiorazione del punto medio ha costante dimezzata; cio non impone un rapporto esatto tra gli %|errori effettivi. %|Esempio: integrale di log(x) su (0,1]. Il punto medio usa solo nodi interni, mentre il trapezio %|standard richiederebbe log(0). L'integrale improprio esiste. Tuttavia f'' e illimitata: le stime C^2 %|e l'ordine 2 non sono garantiti in questo esempio; servono analisi specifica o trasformazione %|dell'integrale. %@TOPIC 61 %|DOMANDA (riformulata): Definisci il fitting ai minimi quadrati, specializzalo a una retta, deriva %|equazioni normali e metodi di soluzione. %|FONTE: https://paola-gervasio.unibs.it/CS/temi/app110925.pdf ; Domanda 2 %|RISPOSTA: %|Dati m punti (x_i,y_i), si cerca p in uno spazio prefissato che minimizzi sum_i (p(x_i)-y_i)^2. Non %|si impone il passaggio per tutti i punti. %|Per p(x)=a0+a1*x, la matrice X ha righe [1,x_i], a=[a0;a1] e si minimizza ||X*a-y||_2^2. Annullando %|il gradiente 2*X'*(X*a-y) si ottiene X'*X*a=X'*y, ossia: %|[m, sum x_i; sum x_i, sum x_i^2]*[a0;a1]=[sum y_i; sum x_i*y_i]. %|X'*X e sempre simmetrica semidefinita positiva, perche v'*X'*X*v=||X*v||_2^2. E definita positiva se %|X ha rango colonna pieno: per una retta occorrono almeno due ascisse diverse. In questo caso il %|minimizzatore e unico. %|Si puo usare Cholesky sulle equazioni normali, ma kappa_2(X'*X)=kappa_2(X)^2: formarle puo %|peggiorare l'accuratezza. QR ridotta X=Q*R porta a R*a=Q'*y senza formare X'*X. SVD e adatta anche a %|rango carente, con scelta della soluzione di norma minima. In MATLAB X\y risolve il problema %|rettangolare; centrare/scalare le ascisse aiuta il condizionamento. %|Il residuo r=y-X*a e ortogonale alle colonne di X: X'*r=0, ma in generale r non e nullo. %@TOPIC 62 %|DOMANDA (riformulata): Come scegliere il metodo e confrontarne il costo? %|FONTE: https://paola-gervasio.unibs.it/CS/temi/app120724.pdf ; Esercizio 1, punti 1.2-1.3 %|RISPOSTA: %|Per A densa n per n: LU circa 2*n^3/3 flop, Cholesky circa n^3/3, due sostituzioni circa 2*n^2. %|Cholesky richiede simmetria e definita positivita. Per una matrice sparsa il costo dipende dal %|fill-in, non solo da n. Un prodotto A*v costa O(nnz(A)); CG costa O(nnz(A)+n) per iterazione. Con %|sei elementi per riga il costo dominante e lineare in n per iterazione. Per confrontare i metodi %|moltiplicare per il numero di iterazioni necessario alla stessa accuratezza. %@TOPIC 63 %|DOMANDA (riformulata): Quando gradiente e CG non sono applicabili e cosa offre BiCGStab? %|FONTE: https://paola-gervasio.unibs.it/CS/temi/app110925.pdf ; Esercizio 1 %|RISPOSTA: %|Le garanzie standard di gradiente e CG richiedono A simmetrica definita positiva. Una matrice non %|simmetrica non le soddisfa anche se invertibile. BiCGStab e un metodo di Krylov per sistemi anche %|non simmetrici: non assicura convergenza universale, puo avere oscillazioni del residuo o breakdown. %|Verificare residuo relativo, flag e limite di iterazioni; una curva non monotona da sola non prova %|divergenza. Nell'appello 2025 A non e simmetrica e il minore principale di ordine 2 vale zero: %|Cholesky e LU senza scambi non sono applicabili; LU con pivotazione e la scelta diretta per questa A %|invertibile. %@TOPIC 64 %|DOMANDA (riformulata): Come si estende il criterio di contrazione ai sistemi? %|FONTE: https://paola-gervasio.unibs.it/CS/temi/app020915.pdf ; Esercizio 1, punti b-c %|RISPOSTA: %|Per x_{k+1}=Phi(x_k), su un insieme chiuso convesso D con Phi(D) contenuto in D, una maggiorazione %|uniforme ||J_Phi(x)||<=q<1 garantisce contrazione, unicita e convergenza da ogni dato in D. In norma %|infinito si usa il massimo delle somme dei moduli per riga. Nel sistema del 02/09/2015, Phi=[c*(cos %|x-sin y);c*x-c*sin y], la norma e al piu 2*|c|, quindi |c|<1/2 e sufficiente su R^2. Per c=1 il %|fallimento della condizione sufficiente non prova da solo divergenza. %@TOPIC 65 %|DOMANDA (riformulata): Come funziona e quando conviene rispetto al composito? %|FONTE: https://paola-gervasio.unibs.it/CS/temi/app020915.pdf ; Esercizio 2 %|RISPOSTA: %|Confrontare S su un pannello e S2 ottenuto dai due mezzi pannelli. In regime asintotico regolare %|l'errore di S2 si stima con |S2-S|/15. Se la stima supera la tolleranza locale si divide ancora, %|ripartendo la tolleranza fra i figli. Una correzione e S2+(S2-S)/15. L'adattivita concentra %|valutazioni dove la funzione varia maggiormente; non e sempre piu efficiente. Il confronto va fatto %|a pari errore effettivo contando valutazioni di f, non soltanto intervalli. Oscillazioni non %|risolte, singolarita e passo minimo possono rendere inaffidabile la stima. %@TOPIC 66 %|DOMANDA (riformulata): Uno schema stabile puo non convergere al problema assegnato? %|FONTE: https://paola-gervasio.unibs.it/CS/temi/app300315.pdf ; Esercizio 3 %|RISPOSTA: %|Si: u_{n+1}=u_n+(h/2)*f(t_n,u_n), sulla griglia t_n=t0+n*h, e inconsistente con y'=f. Il quoziente %|incrementale tende a f/2. Per y'=-3*y converge a exp(-3*t/2), invece di exp(-3*t). Ha fattore %|R=1-3*h/2 ed e assolutamente stabile per 01 per ogni h>0: %|EE introduce crescita artificiale dell'ampiezza. Un metodo con |R(i*h*omega)|<1 introduce invece %|smorzamento numerico. Per confrontare schemi su tempi lunghi controllare ampiezza, fase e %|raffinamento del passo; l'ordine da solo non basta. %@TOPIC 71 %|DOMANDA (riformulata): Come riconoscere lo schema con coefficienti 23,-16,5? %|FONTE: https://paola-gervasio.unibs.it/CS/temi/app270117.pdf ; Esercizio 3; anche preappello %|29/06/2007 %|RISPOSTA: %|u_{n+1}=u_n+h*(23*f_n-16*f_{n-1}+5*f_{n-2})/12 e Adams-Bashforth a tre passi, esplicito e di ordine %|3. Richiede u0,u1,u2, inizializzati con accuratezza adeguata, per esempio con RK. Non e un RK a tre %|stadi: usa tempi precedenti. Sull'equazione test il polinomio caratteristico e %|xi^3-xi^2-z*(23*xi^2-16*xi+5)/12; la stabilita richiede il controllo di tutte le radici. Sull'asse %|reale negativo l'intervallo e -6/11=ceil(log2(L/(2*tol))), con k>=0. Se si conta come prima %|iterazione il punto medio dell'intervallo iniziale, l'indice cambia di uno. Con L=1 e tol=1e-8 %|servono 26 dimezzamenti prima di prendere il nuovo punto medio. Continuita e cambio di segno sono %|essenziali; una radice pari non e in generale isolabile con questo criterio. %@TOPIC 74 %|DOMANDA (riformulata): Come ottimizzare Eulero implicito lineare e A^3*x=b? %|FONTE: https://paola-gervasio.unibs.it/CS/temi/app140709.pdf ; Esercizio 1; app130115 Esercizio 1 %|RISPOSTA: %|Per y'=A*y e h fisso: (I-h*A)*u_{n+1}=u_n. Fattorizzare I-h*A una sola volta e riusare i fattori; a %|ogni passo restano due sostituzioni. Se h cambia la matrice cambia. Per A^3*x=b risolvere A*z1=b, %|A*z2=z1, A*x=z2 usando una sola fattorizzazione di A evita due prodotti di matrici dense e la %|formazione di A^3. Cholesky si usa solo quando la matrice da fattorizzare e simmetrica definita %|positiva. %@TOPIC 75 %|DOMANDA (riformulata): L errore sui coefficienti coincide con l errore di interpolazione? %|FONTE: https://paola-gervasio.unibs.it/CS/temi/app160414.pdf ; Esercizio 1; app100117 Esercizio 2 %|RISPOSTA: %|No: f-p e l'errore di approssimazione esatta, mentre coefficienti perturbati producono un ulteriore %|p-p_hat. Per p=sum a_j*x^j, |p-p_hat|<=sum |delta a_j|*|x|^j. Il condizionamento della Vandermonde %|controlla la sensibilita dei coefficienti; nodi e regolarita controllano l'errore teorico di %|interpolazione. Il triangolo da ||f-p_hat||<=||f-p||+||p-p_hat||. La forma baricentrica evita la %|soluzione di Vandermonde ma non elimina il fenomeno di Runge. %@TOPIC 76 %|DOMANDA (riformulata): Quando non e garantito l ordine due dell interpolazione lineare? %|FONTE: https://paola-gervasio.unibs.it/CS/temi/app190723.pdf ; Esercizio 2; app040918 Esercizio 2 %|RISPOSTA: %|La stima ||f-p||_inf<=H^2*max|f''|/8 richiede f in C^2 con derivata seconda limitata. Per %|sqrt(1-x^2) su [-1,1] le derivate sono singolari agli estremi: la maggiorazione non si applica, pur %|essendo possibile convergenza con ordine ridotto. Su [-0.8,0.8] la regolarita e sufficiente. Con N %|nodi equispaziati H=(b-a)/(N-1), dunque N>=1+ceil((b-a)*sqrt(M2/(8*tol))). Il massimo su una griglia %|di verifica e solo una stima dal basso del sup continuo. %@TOPIC 77 %|DOMANDA (riformulata): Newton converge sempre alla radice piu vicina? E se la Jacobiana e singolare? %|FONTE: https://paola-gervasio.unibs.it/CS/temi/app130115.pdf ; Esercizio 2.d; app100117 Esercizio 1; %|app300315 Esercizio 2 %|RISPOSTA: %|No: il bacino di attrazione non coincide con i punti piu vicini geometricamente alla radice. La %|tangente puo attraversare altre regioni, uscire dal dominio o produrre passi enormi. Per sistemi, %|una Jacobiana singolare impedisce la correzione standard univoca; se la Jacobiana nella soluzione e %|singolare non vale il teorema quadratico usuale. Convergenza lenta non prova da sola molteplicita: %|verificare derivate o rango e raggiungimento del regime asintotico. %@TOPIC 78 %|DOMANDA (riformulata): Quali stime spiegano la differenza tra gradiente e CG? %|FONTE: https://paola-gervasio.unibs.it/CS/temi/app270117.pdf ; Esercizio 2; app040918 Esercizio 1 %|RISPOSTA: %|Per A SPD e kappa=lambda_max/lambda_min, in norma energia ||e||_A=sqrt(e'*A*e), il gradiente %|soddisfa ||e_k||_A<=((kappa-1)/(kappa+1))^k*||e_0||_A. CG soddisfa %|||e_k||_A<=2*((sqrt(kappa)-1)/(sqrt(kappa)+1))^k*||e_0||_A. Sono maggiorazioni, non uguaglianze: %|anche raggruppamento degli autovalori conta. CG termina in al piu n passi in aritmetica esatta; %|arrotondamento puo richiederne di piu. Il residuo euclideo non deve diminuire monotonamente a ogni %|passo. %@TOPIC 79 %|DOMANDA (riformulata): Come distinguere accuratezza, stabilita e confronto di costo? %|FONTE: https://paola-gervasio.unibs.it/CS/temi/app110925.pdf ; Esercizio 2.2; app140423 Esercizio 2 %|RISPOSTA: %|Un metodo di ordine p ha errore globale C*h^p sotto regolarita e stabilita. Per una tolleranza eps %|scegliere h<=(eps/C)^(1/p), ma anche soddisfare la restrizione di stabilita. C non e automaticamente %|1. Con RK3, C circa 10 e h=0.01 si stima 1e-5. EE costa una valutazione di f per passo, RK4 quattro; %|impliciti richiedono una soluzione algebrica, spesso iterativa. A pari h un ordine superiore non %|garantisce universalmente errore minore fuori dal regime asintotico. %@TOPIC 80 %|DOMANDA (riformulata): Come passare da una EDO di ordine superiore a un sistema? %|FONTE: https://paola-gervasio.unibs.it/CS/temi/app110925.pdf ; Esercizio 2.1 %|RISPOSTA: %|Per y''=g(t,y,y'), porre u1=y e u2=y': u1'=u2, u2'=g(t,u1,u2). I dati diventano [y(t0);y'(t0)]. Per %|ordine m usare [y,y',...,y^(m-1)]. Nell'appello 2025 A=[0,1;-9,-5], g(t)=[0;exp(-2*t)] e %|u0=[0;sqrt(11)/2]. Gli autovalori (-5 +/- i*sqrt(11))/2 servono all'analisi della stabilita %|numerica. %@TOPIC 81 %|INTEGRAZIONE SUL PROGRAMMA CONFERMATO %|DOMANDA: Come si scelgono i nodi e perche sono utili? %|RISPOSTA: %|Con n+1 nodi si usano gli zeri di T_{n+1}: t_i=cos((2*i+1)*pi/(2*(n+1))), i=0,...,n. In [a,b]: %|x_i=(a+b)/2+(b-a)*t_i/2. Sono piu fitti agli estremi. Fra i polinomi monici di grado n+1 su [-1,1], %|2^(-n)*T_{n+1} minimizza la norma infinito; per questi nodi il prodotto omega(x)=prod_i(x-x_i) ha %|norma 2^(-n). Il resto e f^(n+1)(xi)*omega(x)/(n+1)!, quando f e sufficientemente regolare. Questa %|proprieta minimax riguarda omega, non una garanzia universale di convergenza per ogni funzione %|continua. I nodi Chebyshev-Lobatto t_i=cos(i*pi/n) includono gli estremi e sono una famiglia %|diversa. Per funzioni analitiche i nodi di Chebyshev consentono tipicamente convergenza molto %|rapida. %@TOPIC 82 %|INTEGRAZIONE SUL PROGRAMMA CONFERMATO %|DOMANDA: Come si dimostrano esistenza e unicita dell interpolatore? %|RISPOSTA: %|Per n+1 ascisse distinte, L_i(x)=prod_{j!=i}(x-x_j)/(x_i-x_j) soddisfa L_i(x_j)=delta_ij. Quindi %|p=sum_i y_i*L_i interpola i dati e ha grado al piu n: esistenza. Se p e q interpolano gli stessi %|dati, p-q ha n+1 zeri distinti ma grado al piu n, dunque e il polinomio nullo: unicita. Nella base %|monomiale V_ij=x_i^j, i,j=0,...,n; det(V)=prod_{i0 per z reale negativo %|tendente a -infinito (o lungo direzioni pertinenti nel semipiano sinistro). Eulero implicito e %|L-stabile; Crank-Nicolson e A-stabile ma non L-stabile perche R(z)->-1. Un RK esplicito ha R %|polinomiale non costante e non puo essere A-stabile. L-stabilita e un approfondimento utile, non una %|domanda attestata negli appelli letti. %@TOPIC 88 %|INTEGRAZIONE SUL PROGRAMMA CONFERMATO %|DOMANDA: Quali sono R(z) e le restrizioni dei metodi principali? %|RISPOSTA: %|EE: R=1+z; per lambda reale negativo 00. Convergenza significa max_n %|||y(t_n)-u_n||->0. Per metodi a un passo con f Lipschitz e adeguate ipotesi, consistenza e stabilita %|danno convergenza. Per multistep lineari vale l'equivalenza di Dahlquist: consistenza + %|zero-stabilita equivale a convergenza. La stabilita assoluta studia invece il comportamento al %|crescere del numero di passi con h fissato sull'equazione test. %@TOPIC 90 %|INTEGRAZIONE SUL PROGRAMMA CONFERMATO %|DOMANDA: Come verificare consistenza e zero-stabilita di un multistep lineare? %|RISPOSTA: %|Scrivere sum_{j=0}^k alpha_j*u_{n+j}=h*sum_{j=0}^k beta_j*f_{n+j}; rho(xi)=sum alpha_j*xi^j e %|sigma(xi)=sum beta_j*xi^j. Consistenza: rho(1)=0 e rho'(1)=sigma(1). Zero-stabilita: tutte le radici %|di rho hanno modulo <=1 e quelle di modulo 1 sono semplici. Stabilita assoluta: per z=h*lambda %|esaminare le radici di rho(xi)-z*sigma(xi), richiedendole interne al cerchio unitario per %|decadimento. E esplicito se beta_k=0, altrimenti implicito. Occorrono k dati iniziali accurati. %|Questi criteri sono un approfondimento generale dei cenni ai multistep. %@TOPIC 91 %|INTEGRAZIONE SUL PROGRAMMA CONFERMATO %|DOMANDA: Perche due metodi di ordine due hanno stabilita e costo diversi? %|RISPOSTA: %|Heun: k1=f(t_n,u_n); pred=u_n+h*k1; k2=f(t_n+h,pred); u_{n+1}=u_n+h*(k1+k2)/2. Due valutazioni %|esplicite per passo. Crank-Nicolson: u_{n+1}=u_n+h/2*(f(t_n,u_n)+f(t_n+h,u_{n+1})); bisogna %|risolvere un'equazione o sistema algebrico. Entrambi hanno errore globale O(h^2), ma Heun ha regione %|di stabilita limitata e CN e A-stabile. Una sola correzione con il predittore EE produce Heun, non %|la soluzione esatta dell'equazione implicita di CN. %@TOPIC 92 %|INTEGRAZIONE SUL PROGRAMMA CONFERMATO %|DOMANDA: Come si aggiorna il passo in base a una stima di errore? %|RISPOSTA: %|Con due approssimazioni di diversa accuratezza, o step doubling, stimare l'errore locale err e %|confrontarlo con atol+rtol*scala. Per un difetto locale O(h^(p+1)), %|h_new=safety*h*(tol/err)^(1/(p+1)); limitare i fattori di crescita e riduzione. Se err supera tol, %|scartare il passo e riprovare. Negli schemi embedded l'esponente dipende dall'ordine dello stimatore %|effettivamente usato. Il controllo locale non garantisce da solo una tolleranza globale esatta. %|Sugli stiff un esplicito puo richiedere passi minuscoli per stabilita anche se la soluzione varia %|lentamente. %@TOPIC 93 %|INTEGRAZIONE SUL PROGRAMMA CONFERMATO %|DOMANDA: Come si ottiene QR e perche e preferibile alle equazioni normali? %|RISPOSTA: %|Per A m per n di rango n, m>=n, QR ridotta ha Q m per n con Q'*Q=I e R n per n triangolare %|superiore. Householder applica riflessioni ortogonali; Givens rotazioni che annullano elementi; %|Gram-Schmidt classico puo perdere ortogonalita in aritmetica finita. L'ortogonalita preserva la %|norma 2. La soluzione LS si ottiene da R*x=Q'*b. La componente del dato ortogonale allo spazio delle %|colonne di Q resta nel residuo. Non si forma A'*A, evitando il quadrato del condizionamento. Per %|matrice quadrata non singolare, la stessa fattorizzazione risolve Ax=b. %@TOPIC 94 %|INTEGRAZIONE SUL PROGRAMMA CONFERMATO %|DOMANDA: Come verificare che una matrice e simmetrica definita positiva? %|RISPOSTA: %|Prima verificare A=A'. Per una matrice reale simmetrica sono equivalenti: x'*A*x>0 per ogni x non %|nullo; tutti gli autovalori positivi; tutti i minori principali di testa positivi (Sylvester); %|esistenza di Cholesky con diagonale positiva. Diagonale positiva da sola non basta. In MATLAB %|[R,p]=chol(A) ha p=0 in caso di successo, ma controllare separatamente simmetria e tolleranze %|numeriche: chol puo usare un solo triangolo. Per A=G'*G si ha semidefinita positivita; e definita %|positiva soltanto se G ha rango colonna pieno. %@TOPIC 95 %|INTEGRAZIONE SUL PROGRAMMA CONFERMATO %|DOMANDA: Quali stime collegano dati, residuo ed errore nei sistemi? %|RISPOSTA: %|Per A invertibile, kappa(A)=||A||*||A^(-1)||. Se r=b-A*x_hat ed e=x-x_hat, A*e=r; dunque %|||e||/||x||<=kappa(A)*||r||/||b||, con b non nullo. Se cambia solo b: errore relativo sulla %|soluzione <=kappa(A)*||delta b||/||b||. Se cambiano A e b, ponendo epsA=||delta A||/||A|| ed %|epsb=||delta b||/||b||, se kappa(A)*epsA<1: ||delta %|x||/||x||<=kappa(A)*(epsA+epsb)/(1-kappa(A)*epsA). La formula senza denominatore e %|un'approssimazione al primo ordine. Non trasformare automaticamente eps macchina in una stima %|rigorosa del backward error di qualsiasi algoritmo: contano crescita, dimensione e stabilita.