Files
2025-02-Numerical/lib/nr/ansi/examples/xftest.c
2025-09-12 18:55:25 +09:00

42 lines
952 B
C

/* Driver for routine ftest */
#include <stdio.h>
#include <math.h>
#define NRANSI
#include "nr.h"
#include "nrutil.h"
#define NPTS 1000
#define MPTS 500
#define EPS 0.01
#define NVAL 11
int main(void)
{
long idum=(-13);
int i,j;
float f,factor,prob,vrnce,*data1,*data2,*data3;
data1=vector(1,NPTS);
data2=vector(1,MPTS);
data3=vector(1,MPTS);
/* Generate two gaussian distributions with different variances */
printf("\n%16s %5.2f\n","Variance 1 = ",1.0);
printf("%13s %11s %16s\n","Variance 2","Ratio","Probability");
for (j=1;j<=NPTS;j++) data1[j]=gasdev(&idum);
for (j=1;j<=MPTS;j++) data2[j]=gasdev(&idum);
for (i=1;i<=NVAL;i++) {
vrnce=1.0+(i-1)*EPS;
factor=sqrt(vrnce);
for (j=1;j<=MPTS;j++) data3[j]=factor*data2[j];
ftest(data1,NPTS,data3,MPTS,&f,&prob);
printf("%11.4f %13.4f %13.4f\n",vrnce,f,prob);
}
free_vector(data3,1,MPTS);
free_vector(data2,1,MPTS);
free_vector(data1,1,NPTS);
return 0;
}
#undef NRANSI