Integrazione numerica

luc27
Ciao ragazzi,

Ho la seguente domanda. Consideriamo il seguente integrale
$\int_0^x f(x') dx'$
dove $f : \mathbb{R} \to \mathbb{R}$. Ora, come si puó integrare numericamente un integrale di questo tipo?

Un alternativa é quella di usare il calcolo simbolico (SimPy, per dirne una). Si puó valutare tale integrale (che ovviamente sará funzione di $x$) senza utilizzare il calcolo simbolico ma con metodi simili all'integrazione numerica di integrali definiti?

Grazie

Risposte
feddy
Certo. Si chiama appunto integrazione numerica, detta anche quadratura. Vedi qui

luc27
Tutto ció si riferisce ad integrali definiti. La mia domanda riguarda integrali del tipo

$g(x) = \int_0^x f(x') dx'$

dove il risultato non é uno scalare ma una funzione di $x$.

L'unica idea che ho é la seguente. Per semplicitá, assumiamo $x \in [0,1]$. Ora, discretizziamo il seguente intervallo in $N_x$ punti, con $x_i, i=1,..N_x$. Valutiamo

$g(x_i) = \int_0^{x_i} f(x') dx', \quad \forall i$

e dopodiché utilizziamo una tecnica di interpolazione sui valori $g(x_i)$ per ottenere la funzione $g(x)$. Penso possa funzionare, ma mi domandavo se ci fossero tecniche piú consistenti (senza utilizzare il calcolo simbolo, che ovviamente darebbe immediatamente il risultato voluto - se $f(x)$ non é troppo complessa).

feddy
L'avevo capito, volevo sottolineare appunto che il tuo integrale è sempre definito, e "funzione" di $x$ significa che quello che otterrai alla fine sarà un vettore $(g(x_i))_i$ che puoi come hai detto te interpolare come meglio credi.
L'accuratezza dipende dalla formula di quadratura su $f$ + l'errore di interpolazione su $g$ (che dipende dalla regolarità della $g(x)$ )

luc27
Ok, mi chiedevo se esistessero tecniche piú raffinate di questo metodo, ma sembra essere l'unica soluzione. Grazie mille per la risposta :smt023

feddy
Non che io sappia. Alla fine si tratta di interpolare una funzione. Non dovresti avere difficoltà a decidere quale formula interpolatoria usare, perché ad esempio se $f$ è $C^0$ allora $g \in C^1$ ( e così via man mano che $f$ è più regolare), pertanto un'interpolazione lineare a tratti ti da un errore quadratico nello spazio, a patto che la derivata seconda non sia troppo larga (allora la stima diventa poco significativa)

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.