add numerical recipes library
This commit is contained in:
21
lib/nr/k_and_r/recipes/fgauss.c
Normal file
21
lib/nr/k_and_r/recipes/fgauss.c
Normal file
@@ -0,0 +1,21 @@
|
||||
|
||||
#include <math.h>
|
||||
|
||||
void fgauss(x,a,y,dyda,na)
|
||||
float *y,a[],dyda[],x;
|
||||
int na;
|
||||
{
|
||||
int i;
|
||||
float fac,ex,arg;
|
||||
|
||||
*y=0.0;
|
||||
for (i=1;i<=na-1;i+=3) {
|
||||
arg=(x-a[i+1])/a[i+2];
|
||||
ex=exp(-arg*arg);
|
||||
fac=a[i]*ex*2.0*arg;
|
||||
*y += a[i]*ex;
|
||||
dyda[i]=ex;
|
||||
dyda[i+1]=fac/a[i+2];
|
||||
dyda[i+2]=fac*arg/a[i+2];
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user