Calcolo della convoluzione numerico coinvolgendo integrale
-
01-10-2019 - |
Domanda
Devo risolvere il seguente circonvoluzione problema correlato integrazione numerica in R o forse sistema di computer algebra come Maxima.
Integrale [({k (y) -l (y)} ^ 2) dy]
dove
k (.) è il pdf di uno standard normale distribuzione
l (y) = integrale [k (z) * k (z + y) dz] (convoluzione standard)
z ed y sono scalari
Il dominio di y è -inf a + inf.
L'integrale in funzione l (.) È un integrale indefinito. Devo aggiungere qualsiasi ipotesi aggiuntiva su z per ottenere questo?
Grazie.
Soluzione
Ecco una soluzione simbolica da Mathematica :
Altri suggerimenti
R non fa l'integrazione simbolica, proprio l'integrazione numerica. C'è il pacchetto Ryacas che Interfacce con Yacas, un programma di matematica simbolica che aiutano maggio.
Vedere il pacchetto distr per l'aiuto possibile con le parti convoluzione (che farà le circonvoluzioni, io non so se il risultato sarà Symbolicly integrabile).
È possibile integrare i numericamente circonvoluzioni dal distr utilizzando la funzione di integrare, ma tutti i parametri devono essere specificati come numeri non variabili.
Per la cronaca, ecco lo stesso problema risolto con Maxima 5.26.0.
(%i2) k(u):=exp(-(1/2)*u^2)/sqrt(2*%pi) $
(%i3) integrate (k(x) * k(y + x), x, minf, inf);
(%o3) %e^-(y^2/4)/(2*sqrt(%pi))
(%i4) l(y) := ''%;
(%o4) l(y):=%e^-(y^2/4)/(2*sqrt(%pi))
(%i5) integrate ((k(y) - l(y))^2, y, minf, inf);
(%o5) ((sqrt(2)+2)*sqrt(3)-2^(5/2))/(4*sqrt(3)*sqrt(%pi))
(%i6) float (%);
(%o6) .02090706601281356
Ci scusiamo per il ritardo di risposta. Lasciando questo qui in caso qualcuno lo trova per la ricerca.