实习项目--C语言矩阵运算
龙小弟丫9602
1/4程序猿,1/4个金融狗,1/4个文青,1/4个本我
展开
-
C语言实现实数和复数矩阵及其各种运算(五)
一、前言本章开始,笔者将详细讲解矩阵的QR分解、特征值、特征向量等运算,并给出函数和测试demo的C代码,以及与matlab计算的结果;并且,本章相当于前面几章的大杂烩,前面所有的结构体、宏定义、函数本章基本全部都有用到。另,这将也是我此连载文章的系列精品之一,矩阵运算的功能越来越复杂,但是笔者全部分模块进行,化繁为简,化整为零,所以需要调用的小函数越来越多,读者遇到不熟悉的函数可以随时Jump到(一)、(二)、(三)、(四)的内容。(PS:另外这两个编辑器为啥功能不能优势互补,而且都没有贴matl原创 2020-08-17 18:51:56 · 3362 阅读 · 14 评论 -
C语言实现实数和复数矩阵及其各种运算(四)
一、前言本章开始,笔者将详细讲解实数和复数矩阵的模(范数)、协方差等运算,并给出函数和测试demo的C代码,以及与matlab计算的结果;并且,本章也出现了我在编写函数、后期与matlab联调跑数据时候踩到的一个坑,读者稍微留意一下。另,这将是我此连载文章的系列精品之一,矩阵运算的功能越来越复杂,但是笔者全部分模块进行,化繁为简,化整为零,所以需要调用的小函数越来越多,读者遇到不熟悉的函数可以随时Jump到(一)、(二)、(三)的内容。二、矩阵的模(范数)这里笔者提到的矩阵的模(范数),数学上严格原创 2020-08-17 15:08:09 · 2790 阅读 · 1 评论 -
C语言实现实数和复数矩阵及其各种运算(三)
一、前言 本章开始,开始详细讲解实数和复数矩阵的转置、复制、行列式、代数余子式、逆等运算,并给出函数和测试demo的C代码,以及与matlab计算的结果; 并且,本章出现了我在编写函数、后期与matlab联调跑数据时候出现的几个坑,读者稍微留意一下。 二、复制运算复制运算,即对矩阵进行复制操作,将一个已知的矩阵原样赋值给另一个矩阵,且原矩阵内容不变:/* Copy: Complex matrixA = Complex matrixB */void CopyMatrix..原创 2020-08-16 21:54:49 · 3185 阅读 · 6 评论 -
C语言实现实数和复数矩阵及其各种运算(二)
一、前言由于实数矩阵的运算较简单,因此在本章中,我只给出复数矩阵的相关运算,一般的实数矩阵,类似炮制即可;复数矩阵的加/减/乘运算涉及到其复数元胞(cell)的相加减运算,由于complex.h头文件中只给出了复数乘法运算,故而复数的加减运算函数需要自己定义功能。二、矩阵加/减法运算即复数矩阵与复数矩阵之间的加/减法运算:/* Complex Matrix Add: matrixC = matrixA + matrixB */void AddMatrix(const Matrix* matr原创 2020-08-15 18:29:40 · 4346 阅读 · 4 评论 -
C语言实现实数和复数矩阵及其各种运算(一)
一、前言 最近在企业实习,花了三个星期的时间肝了一个室内定位算法(雏形,还未优化),实现matlab和C的联写、联调,其难点我认为在于矩阵的各种运算,C++中有Eigen库可用,以前在学slam和做课题时候在Ubuntu下用过一段时间的Eigen,功能强大,提供了各种典型的matrix计算接口,但是在C中,需要我们自己编写每个功能模块。算法核心代码matlab只有大概100行,但是C我写了大概有1500多行。谨以此连载文档记录一下算法开发的关键--复数矩阵运算。 网上关于C语言实现矩阵运算的de原创 2020-08-15 15:52:42 · 5062 阅读 · 8 评论