CGAL与Taucs库求解线程方程组示例

 

 

需要注意的是在taucs_matrix.h#include<cassert>前添加

#include <vector>

这样则可以消除编译过程中taucs_matrix.hstd::vector< > 的一些错误。

若你使用Apple Mac,则在CGAL/taucs_fix.h 中很多判断OS_TYPE的代码都可以注释掉,或者直接将其备份,然后建一个同名的文件,在里面写入

#include "taucs.h"

即可。

以下代码在VS2005中测试.

求解线性方程组 IX = [3 4]^T的示例代码如下:

#include <CGAL/basic.h>

#include <CGAL/Taucs_solver_traits.h>

 

#include <iostream>

using namespace std;

 

typedef CGAL::Taucs_solver_traits<float> TaucsSolver;

typedef TaucsSolver::Matrix Matrix;

typedef TaucsSolver::Vector Vector;

 

#pragma comment(lib,"libatlas.lib")

#pragma comment(lib,"libcblas.lib")

#pragma comment(lib,"libf77blas.lib")

#pragma comment(lib,"liblapack.lib")

#pragma comment(lib,"libmetis.lib")

#pragma comment(lib,"libtaucs.lib")

#pragma comment(lib,"vcf2c.lib")

#pragma comment(lib,"cgal-vc80-mt-s.lib")

 

 

int main()

{

  Matrix A(2,2);

  Vector B(2);

  Vector X(2);

  A.set_coef(0,0,1);

  A.set_coef(0,1,0);

  A.set_coef(1,0,0);

  A.set_coef(1,1,1);

 

  B[0] = 3, B[1] = 4;

 

 

  TaucsSolver solver;

  float d = 1;

 

  solver.linear_solver(A,B,X,d);

   

  cout<<"The result is:"<<endl;

  cout<<X[0]<<"  "<<X[1]<<endl;

 

  return 0;

}

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值