从Eigen开始
原先在学校里做实验时处理数据都用的是Matlab,有时需要直接把算法写到C程序里,通常涉及到的矩阵运算得自己再写一遍, 过程很繁琐,所以当时就想有一个用于矩阵运算的库。最近无意间遇到了Eigen,感觉很好用,于是决定记一些笔记。
这个系列的写作目的主要有以下两个方面:
- 深入了解Eigen,能够基于此做一些科学计算
- 源码级的分析Eigen,来学习C++
所以打算分为入门和精通两个部分,在入门部分中介绍如何利用Eigen实现期望的功能。在精通部分中详细分析Eigen的设计和实现。由于初次接触Eigen,目前还是笔记和翻译官方文档的阶段。
- 初识Eigen
- 矩阵和向量的基本数值计算
- Array类
- Matrix和Array的分块运算(block operation)
- 高级初始化方法(Advanced Initialization)
- Reduction, visitors and broadcasting
- C/C++原生数组(raw buffer)的接口:Map类
Eigen 的数据存储,默认是 col-major 的:
|
|