如何用C语言编写求对称矩阵的特征值和特征向量的程序编写对称矩阵的特征值和特征向量,其中矩阵用二维数组保存.特征向量要求有大到小放到数组里.

来源:学生作业帮助网 编辑:作业帮 时间:2024/03/29 00:29:31
如何用C语言编写求对称矩阵的特征值和特征向量的程序编写对称矩阵的特征值和特征向量,其中矩阵用二维数组保存.特征向量要求有大到小放到数组里.

如何用C语言编写求对称矩阵的特征值和特征向量的程序编写对称矩阵的特征值和特征向量,其中矩阵用二维数组保存.特征向量要求有大到小放到数组里.
如何用C语言编写求对称矩阵的特征值和特征向量的程序
编写对称矩阵的特征值和特征向量,其中矩阵用二维数组保存.特征向量要求有大到小放到数组里.

如何用C语言编写求对称矩阵的特征值和特征向量的程序编写对称矩阵的特征值和特征向量,其中矩阵用二维数组保存.特征向量要求有大到小放到数组里.
//数值计算程序-特征值和特征向量
//////////////////////////////////////////////////////////////
//约化对称矩阵为三对角对称矩阵
//利用Householder变换将n阶实对称矩阵约化为对称三对角矩阵
//a-长度为n*n的数组,存放n阶实对称矩阵
//n-矩阵的阶数
//q-长度为n*n的数组,返回时存放Householder变换矩阵
//b-长度为n的数组,返回时存放三对角阵的主对角线元素
//c-长度为n的数组,返回时前n-1个元素存放次对角线元素
void eastrq(double a[],int n,double q[],double b[],double c[]);
//////////////////////////////////////////////////////////////
//求实对称三对角对称矩阵的全部特征值及特征向量
//利用变型QR方法计算实对称三对角矩阵全部特征值及特征向量
//n-矩阵的阶数
//b-长度为n的数组,返回时存放三对角阵的主对角线元素
//c-长度为n的数组,返回时前n-1个元素存放次对角线元素
//q-长度为n*n的数组,若存放单位矩阵,则返回实对称三对角矩阵的特征向量组
// 若存放Householder变换矩阵,则返回实对称矩阵A的特征向量组
//a-长度为n*n的数组,存放n阶实对称矩阵
int ebstq(int n,double b[],double c[],double q[],double eps,int l);
//////////////////////////////////////////////////////////////
//约化实矩阵为赫申伯格(Hessen berg)矩阵
//利用初等相似变换将n阶实矩阵约化为上H矩阵
//a-长度为n*n的数组,存放n阶实矩阵,返回时存放上H矩阵
//n-矩阵的阶数
void echbg(double a[],int n);
//////////////////////////////////////////////////////////////
//求赫申伯格(Hessen berg)矩阵的全部特征值
//返回值小于0表示超过迭代jt次仍未达到精度要求
//返回值大于0表示正常返回
//利用带原点位移的双重步QR方法求上H矩阵的全部特征值
//a-长度为n*n的数组,存放上H矩阵
//n-矩阵的阶数
//u-长度为n的数组,返回n个特征值的实部
//v-长度为n的数组,返回n个特征值的虚部
//eps-控制精度要求
//jt-整型变量,控制最大迭代次数
int edqr(double a[],int n,double u[],double v[],double eps,int jt);
//////////////////////////////////////////////////////////////
//求实对称矩阵的特征值及特征向量的雅格比法
//利用雅格比(Jacobi)方法求实对称矩阵的全部特征值及特征向量
//返回值小于0表示超过迭代jt次仍未达到精度要求
//返回值大于0表示正常返回
//a-长度为n*n的数组,存放实对称矩阵,返回时对角线存放n个特征值
//n-矩阵的阶数
//u-长度为n*n的数组,返回特征向量(按列存储)
//eps-控制精度要求
//jt-整型变量,控制最大迭代次数
int eejcb(double a[],int n,double v[],double eps,int jt);
//////////////////////////////////////////////////////////////
选自
每个程序都加上了适当地注释,陆陆续续干了几个月才整理出来的啊.
今天都给贴出来了
#include "stdio.h"
#include "math.h"
//约化对称矩阵为三对角对称矩阵
//利用Householder变换将n阶实对称矩阵约化为对称三对角矩阵
//a-长度为n*n的数组,存放n阶实对称矩阵
//n-矩阵的阶数
//q-长度为n*n的数组,返回时存放Householder变换矩阵
//b-长度为n的数组,返回时存放三对角阵的主对角线元素
//c-长度为n的数组,返回时前n-1个元素存放次对角线元素
void eastrq(double a[],int n,double q[],double b[],double c[])
{
int i,j,k,u,v;
double h,f,g,h2;
for (i=0; i1)
{
for (k=0; k0.0)
{
c[i-1]=-c[i-1];
}
h=h-q[u]*c[i-1];
q[u]=q[u]-c[i-1];
f=0.0;
for (j=0; j

如何用C语言编写求对称矩阵的特征值和特征向量的程序编写对称矩阵的特征值和特征向量,其中矩阵用二维数组保存.特征向量要求有大到小放到数组里. 如何用C语言求一般矩阵(非对称矩阵)的特征值和特征向量?从网上查到了一些,实对称矩阵用Jacobi方法,一般矩阵的特征值用QR算法,但是QR算法没有给如何求特征向量.有没有什么方法能求出一 如何用C语言求一般矩阵(非对称矩阵)的特征值和特征向量?从网上查到了一些,实对称矩阵用Jacobi方法,一般矩阵的特征值用QR算法,但是QR算法没有给如何求特征向量.有没有什么方法能求出一 如何用matlab求矩阵的特征多项式和特征值啊,例如我生成的是一个4阶魔术矩阵 如何用MATLAB求一个矩阵的特征值 如何用C语言来编写:求最大公约数和最小公倍数程序. 关于C语言的问题:如何用C语言实现n阶行列式和矩阵的值 如何用matlab求行列式的特征值和特征向量 实对称矩阵A=12 ,求矩阵A的特征值和特征向量 21这个是矩阵A 如何编写一个C语言程序解决矩阵最大特征值及特征向量? qr算法求对称矩阵特征值的matlab代码 恺撒(caesar)密码如何用C语言编写,要求是加密和解密都有 如何用C语言编写一个杨辉三角 如何用C语言编写程序实现哥德巴赫猜想 怎么证明对称矩阵的所有特征值之和大于等于其最大特征值如题 如何用C语言或EXCELL进行编写下面的公式 已知特征值和某个特征值的特征向量如何求矩阵特征值所属的矩阵? 如何用MATLAB求矩阵:已知矩阵a,和矩阵b,a=b*c,求矩阵c