参考

intel MTK实例

https://software.intel.com/sites/products/documentation/doclib/mkl_sa/11/mkl_lapack_examples/lapacke_dgesvd_row.c.htm

http://www.netlib.org/lapack/explore-html/d0/dee/lapacke__dgesvd_8c.html

https://blog.csdn.net/helei001/article/details/18447001

查询函数

http://www.netlib.org/lapack/explore-html/de/ddd/lapacke_8h_source.html

c接口

http://www.netlib.org/lapack/lapacke.html

原理

http://www.netlib.org/lapack/lug/node53.html

  1. #include <stdio.h>
  2. #include <lapacke.h>
  3.  
  4. void print_matrix(double *src, int m, int n)
  5. {
  6. for(int i = ;i < m; ++i)
  7. {
  8. for(int j = ; j < n;++j)
  9. {
  10. printf("%lf ", src[i * n + j] );
  11. }
  12. printf("\n" );
  13. }
  14. printf("\n" );
  15. }
  16.  
  17. int main (int argc, const char * argv[])
  18. {
  19. double a[*] = {4.0,4.0,-3.0,3.0};
  20. int matrix_layout = LAPACK_ROW_MAJOR;
  21. char jobz = 'N';
  22. lapack_int info,m,n,lda,ldu,ldvt;
  23. m = ;
  24. n = ;
  25. lda = ;
  26. ldu = ;
  27. ldvt = ;
  28. double s[];
  29. double u[];
  30. double vt[];
  31. double superb[];
  32. // lapack_int LAPACKE_dgesvd (int matrix_layout, char jobu, char jobvt,
  33. // lapack_int m, lapack_int n, double *a, lapack_int lda,
  34. // double *s, double *u, lapack_int ldu, double *vt,
  35. // lapack_int ldvt, double *superb)
  36. info = LAPACKE_dgesvd( matrix_layout, 'A', 'A', m,
  37. n, a, lda, s,
  38. u, ldu, vt,
  39. ldvt, superb);
  40.  
  41. printf("%d\n",info);
  42. print_matrix(s,,);
  43. print_matrix(u,,);
  44. print_matrix(vt,,);
  45. return ;
  46.  
  47. }

$ gfortran main.c -llapacke -llapack -lrefblas && ./a.out
0
5.656854 4.242641
0.000000 0.000000

-1.000000 0.000000
0.000000 1.000000

-0.707107 -0.707107
-0.707107 0.707107

lapacke svd实例的更多相关文章

  1. SVD实例

    >> X = rand(5,7) X = 0.9797 0.1365 0.6614 0.5828 0.2259 0.2091 0.5678 0.2714 0.0118 0.2844 0.4 ...

  2. 奇异值分解(SVD)和简单图像压缩

    SVD(Singular Value Decomposition,奇异值分解) 算法优缺点: 优点:简化数据,去除噪声,提高算法结果 缺点:数据的转换可能难于理解 适用数据类型:数值型数据 算法思想: ...

  3. 《学习opencv》笔记——矩阵和图像操作——cvInRange,cvInRangeS,cvInvert and cvMahalonobis

    矩阵和图像的操作 (1)cvInRange函数 其结构 void cvInRange(//提取图像中在阈值中间的部分 const CvArr* src,//目标图像 const CvArr* lowe ...

  4. 最近学习工作流 推荐一个activiti 的教程文档

    全文地址:http://www.mossle.com/docs/activiti/ Activiti 5.15 用户手册 Table of Contents 1. 简介 协议 下载 源码 必要的软件 ...

  5. 奇异值分解(SVD)实例,将不重要的特征值改为0,原X基本保持不变

    >> s = rand(5,7) s = 0.4186  0.8381  0.5028 0.1934 0.6979 0.4966 0.6602 0.8462  0.0196  0.7095 ...

  6. 协同过滤和简单SVD优化

    协同过滤(collaborative filtering) 推荐系统: 百度百科的定义是:它是利用电子商务网站向客户提供商品信息和建议,帮助用户决定应该购买什么产品,模拟销售人员帮助客户完成购买过程主 ...

  7. paper 128:奇异值分解(SVD) --- 线性变换几何意义[转]

    PS:一直以来对SVD分解似懂非懂,此文为译文,原文以细致的分析+大量的可视化图形演示了SVD的几何意义.能在有限的篇幅把这个问题讲解的如此清晰,实属不易.原文举了一个简单的图像处理问题,简单形象,真 ...

  8. SVD分解的理解[转载]

    http://www.bfcat.com/index.php/2012/03/svd-tutorial/ SVD分解(奇异值分解),本应是本科生就掌握的方法,然而却经常被忽视.实际上,SVD分解不但很 ...

  9. 转载:奇异值分解(SVD) --- 线性变换几何意义(下)

    本文转载自他人: PS:一直以来对SVD分解似懂非懂,此文为译文,原文以细致的分析+大量的可视化图形演示了SVD的几何意义.能在有限的篇幅把这个问题讲解的如此清晰,实属不易.原文举了一个简单的图像处理 ...

随机推荐

  1. Status bar and navigation bar appear over my view's bounds in iOS 7

    转自:http://stackoverflow.com/questions/17074365/status-bar-and-navigation-bar-appear-over-my-views-bo ...

  2. vue全面介绍

    Vue.js 是一个JavaScriptMVVM库,是一套构建用户界面的渐进式框架.它是以数据驱动和组件化的思想构建的,采用自底向上增量开发的设计.相比于Angular.js,Vue.js提供了更加简 ...

  3. 定期批量修改远程服务器root密码

    一.背景 很多时候运维或安全工作人员需要维护大量的服务器,其中就包括判断是否存在root弱口令, 如果服务器数量很多一一修改的话的确是要好花费不少时间精力的.如果通过脚本来实现密码更改, 再做一个定期 ...

  4. (原创)c++11改进我们的模式之改进单例模式

    我会写关于c++11的一个系列的文章,会讲到如何使用c++11改进我们的程序,本次讲如何改进我们的模式,会讲到如何改进单例模式.观察者模式.访问者模式.工厂模式.命令模式等模式.通过c++11的改进, ...

  5. 使用 "java -jar"命令启动jar包时报不支持的jdk版本异常

    在使用java -jar 命令启动一个jar包的时候,提示版本不支持: [root@hadoop01 eureka-server-master]# java -jar xuebusi-eureka-s ...

  6. 系统清理工具CCleaner被植入后门

    概述 2017年9月18日,有情报披露,著名的系统优化工具CCleaner的某个版本被发现植入后门,大量使用该工具的用户恐将面临泄密风险.这是继Xshell后门事件后,又一起严重的软件供应链来源攻击事 ...

  7. asp.net mvc controller调用js

    在controller中加入代码 ViewBag.js="<script>alert('弹出框');</script>"; 在视图中加入代码 @Html.R ...

  8. Javascript eval()函数 基础回顾

    如果您想详细了解ev al和JSON请参考以下链接: eval  :https://developer.mozilla.org/En/Core_JavaScript_1.5_Reference/Glo ...

  9. PHP重载以及Laravel门面Facade

    目录 重载的概念 魔术方法中的重载 属性重载 方法重载 Laravel中的Facade 扩展 谈谈__invoke Laravel提供了许多易用的Facade,让我们用起来特步顺手,那么这些Facad ...

  10. CSS 自适应

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...