ubuntu安装armadillo说明

1. armadillo说明

armadillo是目前使用比较广的C++矩阵运算库之一,相当于Matlab的C++替代库。许多Matlab的矩阵操作函数都可以找到对应,这对习惯了Matlab的人来说实在是非常方便,另外如果要将Matlab下做研究的代码改写成C++,使用Armadillo也会很方便。

armadillo特性如下:

  • Armadillo是一种用于C ++语言的高质量线性代数库(矩阵数学),旨在在速度和易用性之间取得良好的平衡

  • 提供类似于Matlab的高级语法和功能

  • 可用于直接在C ++中进行算法开发,或将研究代码快速转换为生产环境

  • 为向量,矩阵和立方体提供有效的类(一阶,二阶和三阶张量);支持密集和稀疏矩阵

  • 支持整数,浮点数和复数

  • 复杂的表达式评估器(基于模板元编程)可自动组合多个操作以提高速度和效率

  • 通过与LAPACK或其高性能替代产品之一(例如MKL或OpenBLAS)集成,可以提供各种矩阵分解(本征,SVD,QR等)

  • 可以自动使用OpenMP多线程(并行化)来加快计算量大的操作

  • 根据许可许可提供,对开放源代码和专有(封闭源)软件均有用

  • 可用于机器学习,模式识别,计算机视觉,信号处理,生物信息学,统计,金融等

2. Ubuntu装armadillo库

1.安装依赖库
Armadillo安装前需要先安装依赖库: OpenBLAS and LAPACK

执行命令:

sudo apt-get install libopenblas-dev
sudo apt-get install liblapack-dev
sudo apt-get install libarpack2-dev
sudo apt-get install libsuperlu-dev

2.下载Armadillo包,链接:https://sourceforge.net/projects/arma/files/armadillo-9.600.6.tar.xz/download

3.在Armadillo的安装目录打开终端执行:

cmake .
make

超级用户执行sudo make install

非超级用户执行make install DESTDIR=my_usr_dir,my_usr_dir这个目录是用来存储C++的头文件与源文件的。

到此,安装完成。

3. 测试程序

// test.cpp
#include <iostream>
#include <armadillo>

using namespace std;
using namespace arma

int main(int argc, char **argv)
{
    mat A = randu(4, 5);
    mat B = randu(4, 5);
    
    cout << A*trans(B) << endl;
    
    return 0;
}

4. 编译

g++ test.cpp -std=c++11 -larmadillo  -o test

5. 运行及结果

./test
//结果如下:
0.8635   0.6455   1.2309   0.3664
0.9823   0.7291   1.3008   0.7792
1.0882   1.0004   1.6399   0.6935
1.4101   0.9859   2.0146   0.7092

要在Ubuntu安装Armadillo,可以按照以下步骤进行操作: 1. 首先,使用以下命令安装必要的依赖项: ``` sudo apt-get install libopenblas-dev liblapack-dev libarpack2-dev libsuperlu-dev ``` \[2\] 2. 接下来,下载Armadillo的源代码。你可以从官方网站上下载最新版本的源代码,或者使用以下命令下载4.3版本: ``` wget http://sourceforge.net/projects/arma/files/armadillo-4.300.0.tar.gz ``` \[3\] 3. 解压下载的源代码文件: ``` tar -xzvf armadillo-4.300.0.tar.gz ``` 4. 进入解压后的目录: ``` cd armadillo-4.300.0 ``` 5. 编译和安装Armadillo: ``` cmake . make sudo make install ``` \[1\] 完成以上步骤后,Armadillo将成功安装在你的Ubuntu系统上。你可以在你的代码中使用Armadillo库来进行线性代数计算和矩阵操作。 #### 引用[.reference_title] - *1* [Ubuntu21.10下安装使用Armadillo库](https://blog.csdn.net/weixin_46584887/article/details/123756239)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [ubuntuArmadillo安装](https://blog.csdn.net/whuzhang16/article/details/100052555)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [ubuntu 14.04 下安装Armadillo库 进行稀疏矩阵特征分解](https://blog.csdn.net/kxuehen/article/details/49306195)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值