Vai al contenuto

Calcolo numerico/Integrazione automatica

Wikibooks, manuali e libri di testo liberi.
Indice del libro

Descrizione del problema

[modifica | modifica sorgente]

Problema: approssimare con una tolleranza assoluta o relativa assegnata.

Viene generata una sequenza di valori con , e con stima dell'errore commesso. Ci si arresta al passo tale che

con stima ragionevole dell'integrale.

Si possono scegliere due strategie.

  1. Strategia non adattiva: nella procedura non adattiva viene calcolato con una legge di distribuzione dei nodi fissata. Al passo consideriamo nodi equispaziati, e nel passo successivo ne consideriamo . Utilizziamo le formule di Newton-Coves composite.
  2. Strategia adattiva: la distribuzione dei nodi non è fissata a priori, gli intervalli vengono partizionati a seconda delle esigenze e integrati separatamente.

Stima dell'errore a priori nella strategia non adattiva

[modifica | modifica sorgente]

Per stimare , usiamo un criterio basato sull'estrapolazione di Richardson.

In base alle stime di errore a priori per le formule composite e pari, si ha

Ad esempio, nel caso di Simpson e si ha:

Riscrivo la formula dell'errore con sottointervalli:

Sottraggo membro a membro le formule 1 e 2, e tenendo conto che

segue che

cioè

e sostituendo l'espressione trovata per nella formula 2

Possiamo stimare l'errore commesso con la formula di Simpson su sottointervalli sulla base del calcolo di due formule di quadratura approssimata. Si stima che l'errore assoluto, quando si passa a sottointervalli, si riduca di 15.

Stima dell'errore a posteriori nella strategia adattiva

[modifica | modifica sorgente]

Questa strategia è utile quando la funzione ha delle singolarità. Consideriamo un sottointervallo qualsiasi dell'intervallo su cui si vuole integrare, e si pone

Poniamo . Per il metodo di Simpson

e per l'errore si ha

Consideriamo Simpson su 2 sottointervalli, e definiamo

Se assumiamo che le due derivate quarte siano circa uguali, si può scrivere

e siccome si ha

e abbiamo un fattore 16 di riduzione dell'errore.

Sottraiamo membro a membro le formule di errore 1 e 2.

e sostituendo nella formula 2:

L'errore si stima come

Questa è una stima a posteriori dell'errore applicando Simpson quando lo applichiamo al generico intervallo .

Test d'arresto

[modifica | modifica sorgente]

Nella pratica, si considera il seguente test

dove chiamiamo la quantità al numeratore.

Per ottenere la stima d'errore sull'intero intervallo , ci si arresta quando

Infatti, se questo avviene, per l'errore totale si ha:

perché la somma delle lunghezze degli intervallini è la lunghezza di .

Algoritmo dell'integrazione automatica adattiva

[modifica | modifica sorgente]

Chiamiamo l'intervallo di integrazione attivo in cui si deve calcolare l'integrale. Chiamiamo l'intervallo di integrazione già esaminato, in cui il test

è verificato.

Chiamiamo l'intervallo di integrazione non ancora esaminato.

Fissiamo i tre intervalli:

Al generico istante dell'algoritmo chiamiamo

Supponiamo di aver calcolato . Se il test d'arresto è verificato, aggiungiamo a il nuovo pezzo di integrale, altrimenti dividiamo in due parti.

Sul calcolatore si controlla anche che non diventi eccessivamente piccolo.

Function quad

[modifica | modifica sorgente]

La function quad è il metodo utilizzato da Matlab per calcolare gli integrali ed è ricorsiva.

Consideriamo il punto medio di , poniamo , e consideriamo i sei sottointervalli ottenuti ponendo:

La distribuzione non è esattamente uniforme.

Si applica Simpson sui punti a tre a tre, e si ottiene l'approssimazione dell'integrale:

dove si ottengono applicando Simpson rispettivamente a , a e a .

Poniamo . Dividiamo esattamente a metà, considerandone il punto medio . Poniamo , .

Per poter applicare il test d'arresto, calcoliamo

e raddoppiando il numero dei nodi:

e poniamo poi (è la stima dell'errore tra il passo 0 e il passo ).

Se , il metodo si arresta, altrimenti viene spezzato in due parti.

e si applica ricorsivamente la function quad ai due sottointervalli ottenuti.

Abbiamo una chiamata ricorsiva alla funzione, l'integrale complessivo viene calcolato come somma di due integrali.

Data una funzione con una singolarità, si spezza l'integrale in quel punto e si fa la somma degli integrali separati.