double kern(int k, double x, double xj, double h);

void dens(double *x, int *nx, double *xg, int *nxg, 
	  double *h, int *k, double *dg){
    
    int i,j;
    for(i=0;i<*nxg;i++){
	for(j=0;j<*nx;j++)
	    dg[i]+=kern(*k,xg[i],x[j],*h);
	dg[i]/=(*nx**h);
    }
}

double kern(int k, double x, double xj, double h){
    
    double pi=3.141592654;
    double kern;

    if(-1<=(x-xj/h) && (x-xj/h)<=1){
	switch(k){
	case 1:
	    kern=0.75*(1-((x-xj)/h)) * (1-((x-xj)/h)) ;
	    break;
	case 2:
	    kern=15/16*(1-((x-xj)/h)*((x-xj)/h)) * (1-((x-xj)/h)*((x-xj)/h));
	    break;
	}
    } else {
	kern=0;
    }
    return kern;
}

