vs2010安装配置mtl
2015-08-24 22:30
176 查看
MTL4(Matrix Template Library 4,矩阵模板库)是MTL2的增强版。MTL4也提供了各种类型向量、矩阵的生成操作,虽然在子矩阵和元素的访问方面不及Blitz++全面,但它提供了基本的线性方程组求解功能(Solving Linear Systems,SLS),这对那些想在数值计算领域走的更远些的人来说,无疑是个好消息。不过MTL4的文档实在是不大像话,连个manual都没有,只有官网上给出的一个reference。另外,MTL4依赖于Boost库,安装起来就不如Blitz++方便啦。
下面就如何用MTL4在VS2010上进行SLS做一个简单的介绍。
步骤1:下载安装Boost库。所谓Boost,我的理解是Best oriented-object standard tools,硬要翻译成中文的话只能说它是来源于最大的C++社区的时下最牛叉的C++库,因为它里面的每个部分都由很猛的C++程序员编写并经过N多更猛的人审批测试通过才保存下来。正因为如此,下一个C++标准库的很多子库都将来源于此(至于具体包括哪些就不在此罗嗦了)。
上官网http://www.boostpro.com/download/下载for VC++的安装包,此时是boost_1_44_setup.exe,点击运行,安装过程中记得点选Boost.Regex。它会将所有头文件、文档和预编译好的库文件都安装到你指定目录上(比如C:\Program files\Boost),省得麻烦去用bjam工具手动编译那些库文件了。
步骤2:下载安装MTL4。官网下载页面:http://www.simunova.com/node/145,MTL-4 all in one那一行随便下载哪一个(我下载的是第一个:MTL-all-4.0.7787-Linux.tar.gz),然后一路解压直到目录MTL-all-4.0.7767-Linux出现,依次进入目录,找到\MTL-all-4.0.7767-Linux\usr\include\boost\numeric目录,将它里面的四个子目录itl,mtl,linear-algebra,meta-math全部拷贝到步骤1中所安装的Boost下面的numeric目录(即C:\Program
Files\boost\boost_1_44\boost\numeric)下。
测试:
// File: vector1.cpp
#include <iostream>
#include <boost/numeric/mtl/mtl.hpp>
int main(int, char**)
{
using namespace mtl;
// Define dense vector of doubles with 10 elements all set to 0.0.
dense_vector<double> v(10, 0.0);
// Set element 7 to 3.0.
v[7]= 3.0;
std::cout << "v is " << v << "\n";
return 0;
}
下面就如何用MTL4在VS2010上进行SLS做一个简单的介绍。
步骤1:下载安装Boost库。所谓Boost,我的理解是Best oriented-object standard tools,硬要翻译成中文的话只能说它是来源于最大的C++社区的时下最牛叉的C++库,因为它里面的每个部分都由很猛的C++程序员编写并经过N多更猛的人审批测试通过才保存下来。正因为如此,下一个C++标准库的很多子库都将来源于此(至于具体包括哪些就不在此罗嗦了)。
上官网http://www.boostpro.com/download/下载for VC++的安装包,此时是boost_1_44_setup.exe,点击运行,安装过程中记得点选Boost.Regex。它会将所有头文件、文档和预编译好的库文件都安装到你指定目录上(比如C:\Program files\Boost),省得麻烦去用bjam工具手动编译那些库文件了。
步骤2:下载安装MTL4。官网下载页面:http://www.simunova.com/node/145,MTL-4 all in one那一行随便下载哪一个(我下载的是第一个:MTL-all-4.0.7787-Linux.tar.gz),然后一路解压直到目录MTL-all-4.0.7767-Linux出现,依次进入目录,找到\MTL-all-4.0.7767-Linux\usr\include\boost\numeric目录,将它里面的四个子目录itl,mtl,linear-algebra,meta-math全部拷贝到步骤1中所安装的Boost下面的numeric目录(即C:\Program
Files\boost\boost_1_44\boost\numeric)下。
测试:
// File: vector1.cpp
#include <iostream>
#include <boost/numeric/mtl/mtl.hpp>
int main(int, char**)
{
using namespace mtl;
// Define dense vector of doubles with 10 elements all set to 0.0.
dense_vector<double> v(10, 0.0);
// Set element 7 to 3.0.
v[7]= 3.0;
std::cout << "v is " << v << "\n";
return 0;
}
相关文章推荐
- Java中常见的几个乱码问题以及解决方法
- POJ 3264 Balanced Lineup
- POJ 1679 The Unique MST( 判断最小生成树是否唯一)
- 设计模式-结构型之外观模式
- java String 的一些用法
- 细说 ASP.NET Cache 及其高级用法
- CSS学习笔记——选择器
- .Net分布式异常报警系统-项目介绍
- 培训开始的日子--2015年8月24日
- Android开发框架
- openssl api - 1
- WPF之NPOIE导出xcel
- Win10开始菜单打不开
- 开始新的征程
- 在线调试方案的思考与实践
- Map笔记总结
- Win7系统安装好Axure点击运行报.NET Framework4.0未安装的解决办法
- 欢迎使用CSDN-markdown编辑器
- iOS 地图坐标系的转换
- OpenGL数学知识