Discussione: Funzione ERF in C++
View Single Post
Old 13-10-2002, 02:41   #2
KRYHAWOK
Senior Member
 
L'Avatar di KRYHAWOK
 
Iscritto dal: Sep 2001
Città: COMO, sul maestoso LARIO
Messaggi: 248
Dopo un po' di mosse penso di esserci arrivato:
il problema sta nel fatto che la funzione gaussiana non ha primitiva, quindi il calcolo dell'area sottesa è solo numerico: erf(x) non ha espressione analitica.

La gaussiana standardizzata è un'esponenziale, quindi trasformabile in una serie uniformemente convergente su tutto R. Ho poi integrato per serie per approssimare la funzione a mio piacimento. Per avere una precisione fino a 10^(-4) è necessario sommare non meno di 15 termini della serie ottenuta, ma devo ammettere che non è poi tanto male.

Ecco quindi l'espressione approssimata dell'area sottesa dalla gaussiana standardizzata in funzione di x (con f[0]=0). A partire da questa basta un bel ciclo FOR e il calcolo è fatto.
A chi può servire:



Se qualcuno ha un'idea migliore mi faccia sapere!
__________________
Athlon FX-53 / MSI K8N Neo2 Platinum / Corsair TwinX 1024 XL / 2 x WesternDigital Raptor 74GB - RAID 0 / Gainward PowerPack! 2200 GeF. 6800 256MB / Pioneer DVR-108 / LiteOn LTR-52327S / Enermax 550W / HP P1100 21" CRT
KRYHAWOK è offline   Rispondi citando il messaggio o parte di esso