www.pudn.com > Genecircus20070919.rar > Integration.cpp


// Integration.cpp: implementation of the Integration class. 
// 
////////////////////////////////////////////////////////////////////// 
 
#include "Integration.h" 
#include "wx_pch.h" 
////////////////////////////////////////////////////////////////////// 
// Construction/Destruction 
////////////////////////////////////////////////////////////////////// 
 
Integration::Integration() 
{ 
	x = new double[6]; 
	w = new double[6]; 
	w[1]=0.2955242247; 
	w[2]=0.2692667193; 
	w[3]=0.2190863625; 
	w[4]=0.1494513491; 
	w[5]=0.0666713443; 
 
	x[1]=0.1488743389; 
	x[2]=0.4333953941; 
	x[3]=0.6794095682; 
	x[4]=0.8650633666; 
	x[5]=0.9739065285; 
} 
 
Integration::~Integration() 
{ 
    delete [] x; 
	delete [] w; 
} 
 
double Integration::qgaus(double up,double low) 
{ 
	double ss =0.0; 
	double xm = 0.0; 
	double xr = 0.0; 
	double dx = 0.0; 
	xm = 0.5*(up+low); 
	xr = 0.5*(up-low); 
	for(int i =1;i<=5;i++){ 
		dx = xr*x[i]; 
		ss = ss+w[i]*(exp(-(xm+dx)*(xm+dx))+exp(-(xm-dx)*(xm-dx))); 
	} 
	ss = xr*ss; 
	return ss; 
}