freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

冪法求解矩陣主特征值的加速方法畢業(yè)論文(編輯修改稿)

2025-02-14 16:55 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 0。im。i++)vector[i]=vector_inner_product(n,A[i],v)。 return vector。}double *square_matrix_multiply_vector(const intamp。 n,double **A,double *v){ return matrix_multiply_vector(n,n,A,v)。}double **matrix_principal_eigen(const int n,double **A){ double *v=new double[n],**eig=new double*[2]。//先定義兩個(gè)向量,分別存儲(chǔ)乘冪前后的迭代向量。 eig[0]=new double[1]。//存放主特征值。 eig[1]=new double[n]。//存放主特征向量。 eig[0][0]=0。 for(int i=0。in。i++)eig[1][i]=1+i。//用(1,2,...,n)作為初始試探向量v; double old_lambda。 int index。//定義一個(gè)指標(biāo)變量,來(lái)提取乘冪后的最大分量指標(biāo); int step=0。 do{ step++。 old_lambda=eig[0][0]。 //double norm=vector_1_norm(n,eig[1])。//規(guī)范化,防止特征值大的時(shí)候計(jì)算機(jī)存儲(chǔ)有溢出; double norm=vector_infty_norm(n,eig[1])。//規(guī)范化,防止特征值大的時(shí)候計(jì)算機(jī)存儲(chǔ)有溢出; for(i=0。in。i++)v[i]=eig[1][i]/norm。//更新; eig[1]=square_matrix_multiply_vector(n,A,v)。//乘冪; index=vector_max_ponent(n,eig[1])。//提取最大分量指標(biāo); eig[0][0]=eig[1][index]/v[index]。//計(jì)算這次乘冪后最大分量與乘冪前該分量的比值; //cout第step++步,分量v[index] = v[index], vv[index] = vv[index],主特征值lambda的近似值為:lambdaendl。 //}while(fabs(vv[index])vector_1_norm(n,vv)amp。amp。fabs((lambdaold_lambda)/lambda)1e15amp。amp。step10000)。//x循環(huán)終止條件為三選一; }while(fabs((eig[0][0]old_lambda)/eig[0][0])1e8amp。amp。step10000)。//x循環(huán)終止條件為二選一; cout經(jīng)過step步乘冪方法計(jì)算,得到主特征值近似值為:eig[0][0]endl。 return eig。}void main(){ (16)。 int i,n。 cout請(qǐng)輸入矩陣規(guī)模n:endl。 cinn。 double **A=new double*[n]。 cout請(qǐng)輸入 n X n 的矩陣元素:endl。 for(i=0。in。i++) { A[i]=new double[n]。 for(int j=0。jn。j++)cinA[i][j]。 } double **eig=matrix_principal_eigen(n,A)。 cout矩陣主特征值為:eig[0][0]endl。 cout矩陣主特征向量為:endl。 for(i=0。in。i++)couteig[1][i]endl。}程序(2)includeincludeint vector_max_ponent(const int n,const double *v){ double max=fabs(v[0])。 for(int i=0,index=0。in。i++)if(maxfabs(v[i])){index=i。max=fabs(v[i])。} return index。}double vector_inner_product(const int n,const double *u,const double *v){ double value=0。 for(int i=0。in。i++)value+=u[i]*v[i]。 return value。}double vector_infty_norm(const int n,const double *v){ double value=fabs(v[0])。 for(int i=1。in。i++) { if(valuefabs(v[i]))value=fabs(v[i])。 } return value。}double *matrix_multiply_vector(const intamp。 m,const intamp。 n,double **A,double *v){ double *vector。 vector=new double [m]。 for(int i=0。im。i++)vector[i]=vector_inner_product(n,A[i],v)。 return vector。}double *square_matrix_multiply_vector(const intamp。 n,double **A,double *v){ return matri
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1