c语言实现求一个矩阵特征值和特征向量

 

前言

      求矩阵的特征值,主要是用的QR分解,在我的有一次博客里,我已经详细地给出了计算的过程,大家有兴趣可以去看下,经过几天的钻研,终于完成了整个的eig算法。下面我将把我的整个代码附上,有不懂的可以问我,欢迎一起讨论学习!

       这是对上一次的修改版,上一次写的程序是在C++编译环境下编译的,所以放在c里面编译有些会出错。

       最后,如果有不对的地方希望大家不吝赐教,谢谢!

#include
#include
#include 
#include 

//定义一个结构体,用来表示一个二维的矩阵
typedef struct 
{
	int row;
	int column;
	double *data;//用来存放矩阵的元素
}Matrix;

/************************************************************************
函数功能:初始化一个矩阵
输入:要初始化的矩阵matrix、矩阵的行row、矩阵的列column
输出:初始化成功:true;初始化失败:false
************************************************************************/
bool InitMatrix(Matrix *matrix, int row, int column)
{
	int matrix_size = row*column*sizeof(double);
	if (matrix_size <= 0)
		return false;
	matrix->data = (double*)malloc(matrix_size);//给矩阵分配空间
	if (matrix->data)
	{
		matrix->row = row;
		matrix->column = column;
		return

你可能感兴趣的:(算法)