Exemple #1
0
void minus2D(double **a, double **b, double **c, int nrows, int ncols)
{
    int x ;

    for (x=0; x < nrows; ++x) {
        vvm(a[x], b[x], c[x], ncols) ;
    }
}
Exemple #2
0
void vcompl(double *a, double *b, int n)
// a <- 1 - b
{
    double *x ;
    ZALLOC(x, n, double) ;

    vvm(x, x, b, n) ;
    vsp(x, x, 1.0, n) ;

    copyarr(x, a, n) ;

    free(x) ;
}
double chitest(double *a, double *p, int n) 
/* a is n boxes.  Goodness of fit test to p */
{
 
 double *x, *b, *pp ;
 double y1=0.0, y2=0.0 ;
 int i ;

 ZALLOC(pp, n, double) ;
 if (p != NULL)
  copyarr(p,pp,n) ;
 else 
  vclear(pp, 1.0, n) ;

 y1 = asum(pp,n) ;
 y2 = asum(a,n) ;

 if ( (y1==0.0) || (y2==0.0) ) { 
  free(pp) ;
  return 0.0 ;
 }

 ZALLOC(x,n,double) ;
 ZALLOC(b,n,double) ;


 vst (x, pp, y2/y1, n) ;  /* expected */

 vsp (x, x, .0001, n) ;
 vvm (b, a, x, n) ;  
 vvt (b, b, b, n) ;
 vvd (b, b, x, n) ;

 y1 = asum(b,n) ;

 free(x) ;
 free(b) ;

 return y1 ;

}