| 查看: 277 | 回复: 0 | |||
[求助]
这个程序怎么改啊 指针
|
|
这个程序是用来进行矩阵对角化的,但是,编译好后,一旦输入有零的矩阵元后,就会发生指令使得内存不可读的错误,如果矩阵中没有零元素,就很好用,这是采用雅可比方法编写的~求大侠相助!! #include #include #include #include class jacobi {private: int flag,i,iteration,j,k,n,b,h; double csa,eps1,eps2,eps3,p,q,s1,s2,sna,spq,sum,temp; double *eigen,**a,**t; public: jacobi() { iteration=0;flag=1; eps1=1e-10;eps2=1e-10;eps3=1e-10; } void solution (); ~jacobi() { delete [] eigen; for (i=0;i delete [] a; for (i=0;i delete [] t; } }; void main() { jacobi eigenpair; eigenpair.solution(); } void jacobi::solution() { cout<<"输入矩阵阶数:"; cin>>n; eigen=new double [n]; for (i=0;i a=new double*[n]; for(i=0;i t=new double*[n]; for (i=0;i for (i=0;i for (i=0;i cout<<"\n输入a["< cin>>a[j]; a[j]=a[j]; } cout<<"输入矩阵结束"< for (i=0;i t=1.0; s1+=a*a; sum+=a; } do { iteration++; for(i=0;i if(fabs(a[j]) else { q=fabs(a-a[j][j]); if (q>eps2) { b=i;h=j; p=2*a[j]*q/(a-a[j][j]); spq=sqrt(p*p+q*q); csa=sqrt((1+q/spq)/2); sna=p/(2*csa*spq); } else { csa=0.707107;sna=csa; } for(k=0;k t[k]=temp*csa+t[k][j]*sna; t[k][j]=temp*sna-t[k][j]*csa; } temp=a; a=temp*csa*csa+a[h][h]*sna*sna+2*a[h]*csa*sna; a[h][h]=temp*sna*sna+a[h][h]*csa*csa-2*a[h]*csa*sna; a[h]=0;a[h]=0; for(k=0;k { temp=a[k]; a[k]=temp*csa+a[h][k]*sna; a[h][k]=temp*sna-1*a[h][k]*csa;//这里有点问题 } for (k=0;k { temp=a[k]; a[k]=temp*csa+a[k][h]*sna;//有问题,这里要注意a[h]的索引标的问题 a[k][h]=temp*sna-1*a[k][h]*csa; } } } s2=0.0; for (i=0;i eigen=a; s2+=eigen*eigen; } if (fabs(1-s1/s2) }while(flag==1); for (i=0;i cout<<"\n特征值["<< cout<<"\n收敛于"< for(i=0;i cout<<"\n特征值之和="< for(j=0;j cout<<"\n特征向量["< cout< system("pause" ;} |
» 猜你喜欢
写了一篇“相变储能技术在冷库中应用”的论文,论文内容以实验为主,投什么期刊合适?
已经有3人回复
需要合成515-64-0,50g,能接单的留言
已经有3人回复
最近几年招的学生写论文不引自己组发的文章
已经有10人回复
中科院杭州医学所招收博士生一名(生物分析化学、药物递送)
已经有3人回复
A期刊撤稿
已经有5人回复
临港实验室与上科大联培博士招生1名
已经有8人回复
26申博自荐
已经有7人回复
想换工作。大多数高校都是 评职称时 认可5年内在原单位取得的成果吗?
已经有4人回复
带资进组求博导收留
已经有9人回复
求助大佬们,伤口沾上了乙腈
已经有6人回复
找到一些相关的精华帖子,希望有用哦~
高校试用期 调动 怎么一个手续啊?急
已经有13人回复
求助有机牛人,有什么办法可以强有力的促进还原消除啊~~
已经有13人回复
African journal of Biotechnology怎么8月份刊出的文章还没有进SCI数据库啊
已经有10人回复
最全的matlab字符串操作总结--一点点的改变让程序变得更快速
已经有48人回复
正交试验的最优结果怎么选取
已经有5人回复
论文小修,没改不小心就发过去了,怎么办啊
已经有27人回复
100BB急求matlab编程中的问题解决,如何修改这个程序呢?
已经有4人回复
文章已经接受,但是Elsevier数据库编辑要我改变表的格式,这个怎么办?
已经有11人回复
【求助】液相色谱测定血浆问题,怎么做?
已经有3人回复
【求助】module 里面封装的程序的形参能是指针类型的吗?【已完结】
已经有5人回复
【求助】求将c语言改写为C++,求教高人啊!
已经有6人回复
【求助】做程序升温氧化,出峰时抖动需要怎么改进
已经有17人回复
【求助】指针型真空泵与固相萃取装置连用时怎么操作
已经有6人回复
【求助】热固性塑料成型添加玻纤或者碳纤改性怎么加啊?
已经有12人回复
科研从小木虫开始,人人为我,我为人人













;
回复此楼
点击这里搜索更多相关资源