锘??xml version="1.0" encoding="utf-8" standalone="yes"?>九九精品久久久久久噜噜,综合网日日天干夜夜久久,久久精品夜夜夜夜夜久久http://www.shnenglu.com/newplan/archive/2008/05/07/49127.html灞辨硥寮歡灞辨硥寮歡Wed, 07 May 2008 07:05:00 GMThttp://www.shnenglu.com/newplan/archive/2008/05/07/49127.htmlhttp://www.shnenglu.com/newplan/comments/49127.htmlhttp://www.shnenglu.com/newplan/archive/2008/05/07/49127.html#Feedback0http://www.shnenglu.com/newplan/comments/commentRss/49127.htmlhttp://www.shnenglu.com/newplan/services/trackbacks/49127.html
/*
Romberg Algorithm
寮鍙戣?newplan
寮鍙戞棩鏈?08.05.07
*/


/*=======================================*/
/*INCLUDES*/
#include <cstdlib>
#include <iostream>
#include <cmath>
/*=======================================*/
/*MACROS USED IN THIS FILE*/
#define MAX 20
#define PRECISION 0.000008
/*=======================================*/
/*DECLARE NAMES IN STL NAMESAPCE */
using std::cout;
using std::endl;

/*=======================================*/
/*CLASS FUNC (FUNCTION OBJECT): THE ORIGINAL FUNCTION WE WANT TO INTEGRAL*/
class func{
public:
func(double x=1.0):exp(x){}
double operator()(const double& dnum)const{return pow(dnum,exp);}
private:
double exp;
};
/*=======================================*/
/*CLASS ECHELONFUNC (FUNCTION OBJECT)姊艦娉曠殑閫掓帹鍏紡*/
class echelonFunc{
public:
echelonFunc(double begining,double ending,func & myfunc);
double operator()();
private:
double h;
int n;
double T;
func myfunc;
double begining;
double ending ;
};
/*=======================================*/
echelonFunc::echelonFunc(double begining,double ending,func & myfunc)
{
this->begining=begining;
this->ending=ending;
this->h=ending-begining;
this->n=0;
this->T=0;
this->myfunc=myfunc;//FUCNTION
}
/*------------------------------*/
/* INCREASE FUNCTION 閫掓帹鍑芥暟*/
double echelonFunc::operator()()
{ if(this->n==0)
{
this->T=h*0.5*(myfunc(this->begining)+myfunc(this->ending));
this->n=1;
return this->T;
}
double len=0.5*h;
double sum=0;
int k=0;
for(k=0;k<this->n;k++)
{
sum+=myfunc(len);
len=len+h;
}
this->T=0.5*this->T+0.5*h*sum;
this->h/=2;
this->n*=2;
return this->T;
}
/*=======================================*/
/*THE MAIN CLASS IN THIS PROGRAM*/
class Romberg{
public:
Romberg(double begining,double ending,double exp);
~Romberg();
private:
void RombergCPU();/*THE MOST IMPORTANT FUNCTION IN THIS PROGRAM*/
echelonFunc *echol;
double T[MAX][MAX];/*STO THE ROMBERG TABLE*/
};
/*------------------------------*/
Romberg::Romberg(double begining ,double ending ,double paraexp)
{
func myfunc(paraexp);
echol = new echelonFunc(begining,ending,myfunc);
RombergCPU();
}
/*------------------------------*/
Romberg::~Romberg()
{
delete echol;
}
/*------------------------------*/
void Romberg::RombergCPU()
{ clock_t Start; //TIME STARAT
clock_t End; //TIME END
double *p[MAX];//WE USE THIS POINTER ARRAY TO ACCELERATE ALGOTITHM
double **q;
int i,j;
Start = clock();//TIME START FROM HERE
for(i = 0,q = p; q < p+MAX; q++,i++)
*q= &T[i][0];
double a,b,pows;
cout<<"-----------------------Romberg Algorithm---------------------"<<endl;
*p[0]=(*echol)();
cout<<" "<<*p[0]<<endl;
p[0]++;
do{
*p[0]=(*echol)();
cout<<" "<<*p[0];
p[0]++;
for(i=1;;i++)
{
pows=pow(4.0,double(i));
a=pows/(pows-1);
b=1/(pows-1);
*p[i]=a*(*(p[i-1]-1))-b*(*(p[i-1]-2));//ROMBERG ALGORITHM
cout<<" "<<*p[i];
if(p[i]==&T[i][0])
{
p[i]++;
break;
}
p[i]++;
}
cout<<endl;//fabs(T[i][0]-T[i-1][0])
}while(fabs(T[i][0]-T[i-1][0])>PRECISION);
End = clock();//TIME END HERE
cout<<"-------------------------------------------------------------"<<
endl<<" TIME SPEND:"<<(double)(End-Start)/CLOCKS_PER_SEC<<endl;
}
/*=======================================*/
/*MAIN FUNCTION*/
int main(int argc, char *argv[])
{
Romberg romberg(0,1,1.5);//ROMBERG API :BEGIN(0) END(1) EXP(1.5)
system("PAUSE");
return EXIT_SUCCESS;
}

]]>
久久精品国产精品亚洲人人|
久久99精品久久久久子伦|
久久er国产精品免费观看8|
久久综合给合综合久久|
伊人久久综合无码成人网|
久久精品国产99久久久|
日本久久久久久中文字幕|
怡红院日本一道日本久久
|
久久国产精品免费一区二区三区|
草草久久久无码国产专区|
免费一级做a爰片久久毛片潮|
久久久久亚洲av综合波多野结衣|
国产99精品久久|
国产99久久久国产精品小说|
久久这里只有精品久久|
久久久久久夜精品精品免费啦|
久久久免费观成人影院|
五月丁香综合激情六月久久|
久久99精品久久久久久野外|
人妻少妇久久中文字幕一区二区|
热re99久久精品国产99热|
麻豆一区二区99久久久久|
久久国语露脸国产精品电影|
久久久久亚洲AV无码专区网站|
麻豆AV一区二区三区久久|
久久综合伊人77777麻豆|
99久久精品免费国产大片|
狠狠色婷婷久久综合频道日韩|
久久午夜综合久久|
99热热久久这里只有精品68|
99精品国产在热久久无毒不卡|
亚洲AV无码1区2区久久|
伊人久久一区二区三区无码|
久久久久久国产精品美女|
99久久综合国产精品二区|
欧美久久综合性欧美|
成人精品一区二区久久|
18岁日韩内射颜射午夜久久成人|
久久久久四虎国产精品|
久久国产精品国语对白|
午夜视频久久久久一区
|